JavaScript-基础篇(二)之DOM&BOM

DOM

DOM查找方法

document.getElementById()
返回对拥有指定ID的第一个对象的引用
返回值:DOM对象
document.getElementsByTagName('tag')
返回对所有tag标签引用的集合
返回值:数组

设置元素样式

ele.style.styleName=styleValue
设置ele元素的CSS样式
ele.innerHTML
返回ele元素开始和结束标签之间的HTML
ele.innerHTML="html"
设置ele元素开始和结束标签之间的HTML内容为html

获取属性

ele.getAttribute('attribute')
获取ele元素的attribute属性
获取标签属性语法: DOM对象.属性 如p.id
自定义属性必须通过getAttribute()得到

设置属性

ele.setAttribute('attribute',value)
在ele元素上设置属性

删除属性

ele.removeAttribute('attribute')

HTML事件

关于this的指向
在事件触发的函数中,this是对该DOM对象的引用

DOM0级事件

ele.事件 = 执行脚本
在DOM对象上绑定事件
执行脚本可以是一个匿名函数,也可以是一个函数的调用

鼠标事件

onload 页面加载时触发

window.onload = function(){
    //代码
}

onclick 鼠标点击时触发
onmouseover 鼠标滑过时触发
onmouseout 鼠标离开时触发
onfoucs 获得焦点时触发
onblur 失去焦点时触发
onchange 域的内容改变时触发
onsubmit : 表单中的确认按钮被点击时发生
onmousedown : 鼠标按钮在元素上按下时发生
onmousemove : 在鼠标指针移动时发生
onmouseup : 在元素上松开鼠标按钮时触发
onresize : 当调整浏览器窗口的大小时触发

window.onresize = function(){
    console.log('我的尺寸被改变了');
}

onscroll : 拖动滚动条滚动时触发

键盘事件

onkeydown : 在用户按下一个键盘按键时发生
onkeypress : 在键盘按键被按下并释放一个键时发生
onkeyup : 在键盘按键被松开时发生
keyCode : 返回onkeypress,onkeydown或onkeyup事件触发的键的值的字符代码,或键的代码

document.onkeydown = function(event){
    //event代表事件的状态,如触发event对象的元素,鼠标的位置及状态等
    console.log(event.keyCode);
}

你还可以输入3030

BOM

window

window是浏览器的一个实例,在浏览器中,window对象有双重角色,它既是通过JavaScript访问浏览器窗口的一个接口,又是ECMAScript规定的Global对象.

window.username = 'greentea';   //var username = 'greentea'
window对象的方法

window.alert('content')
显示带有一段消息和一个确认按钮的警告框
window.confirm('message')
显示一个带有指定消息和OK及取消按钮的对话框
返回值:如果用户点击确定,则confirm()返回true,否则返回false
window.prompt('text,defaultText')
参数:
text:要在对话框中显示的纯文本
defaultText:默认的输入文本
返回值:如果用户单击提示框的取消按钮,则返回null,如果单击确定,则返回输入字段当前显示的文本

var message = window.prompt('请输入您的星座',"天蝎座");

window.open(pageURL,name,parameters)
打开一个新的浏览器窗口或查找一个已命名的窗口
参数:
pageURL:子窗口路径
name:子窗口句柄(name声明了新窗口的名称,方便后期通过name对子窗口进行引用)
parameters:窗口参数(各参数用逗号分隔)
window.close

定时器

超时调用

setTimeout(code,millisec)
在指定的毫秒数后调用函数或计算表达式
参数:
1.code:要调用的函数或要执行的JavaScript代码串
2.millisec:在执行代码前需等待的毫秒数
说明:
setTimeout()只执行code一次,如果要多次调用,可以让code自身在此调用setTimeout()

清除超时调用

clearTimeout(id)
取消setTimeout()
参数:
id:由setTimeout()返回的ID值,该值标识要取消的延迟执行代码块

//window.setTimeout('alert("hello")',2000);
var timeout1 = setTimeout(function(){
    alert('hello');
},2000)
clearTimeout(timeout1);
间歇调用

setInterval(code,millisec)
每隔指定的时间执行一次代码
参数:
1.code:要调用的函数或要执行的JavaScript代码串
2.millisec: 周期性 执行或调用code之间的时间间隔,以毫秒计

清除间歇调用

clearInterval(id)
取消setInterval()
参数:
id:由setInterval()返回的ID值,该值标识要取消的延迟执行代码块

var num = 1,
    max = 10,
    tiemer = null;
//每隔1秒钟num递增一次,直到num的值等于max清除
//间歇方法实现
timer = setInterval(function(){
    console.log(num)
    num++;
    if (num > max) {
        clearInterval(timer);
    }
    
},1000)
//超时方法实现
function inCreamentNum(){
    console.log(num);
    num++;
    if (num<=max) {
        setTimeout(inCreamentNum,1000);
    }else{
        clearTimeout(timer);
    }
}
timer = setTimeout(inCreamentNum,1000)

location

location对象提供了与当前窗口中加载的文档有关的信息,还提供了一些导航的功能,它既是window对象的属性,也是document对象的属性

location对象的属性

location.href
返回当前加载页面的完整URL
location.hash
放回URL中的hash(#号后 跟0或多个字符),如果不包含则返回空字符串


    

location.host
返回服务器名称和端口号(如果有)
location.hostname
返回不带端口号的服务器名称
location.pathname
返回URL中的目录和(或)文件名
location.port
返回URL中指定的端口号,如果没有,返回空字符串
location.protocol
返回页面使用的协议
location.search
返回URL的查询字符串,这个字符串以问号开头

location对象的方法
位置操作

改变浏览器位置的方法: location.href
location对象其他属性也可以改变URL: location.hash location.search

location.replace()
location.replace(url)
重新定向URL
使用location.replace不会在历史记录中生成新记录

setTimeout(function(){
    //三种方法皆可
    // location.href = 'http://www.baidu.com';
    // window.location = 'http://www.baidu.com';
    location.replace('http://www.baidu.com');
},2000)

location.reload()
重新加载当前显示的页面
说明:location.reload() 有可能从缓存中加载
location.reload(true) 从服务器重新加载

history

history对象保存了用户在浏览器中访问页面的历史记录

history.back()
回到历史记录的上一步
相当于使用了history.go(-1)
history.forward()
回到历史记录的下一步
相当于使用了history.go(1)

screen

screen对象属性

screen.availWidth
返回可用的屏幕宽度
screen.availHeight
返回可用的屏幕高度
补充
window.innerWidth
window.innerHeight
获取窗口文档显示区的高度和宽度

Navigator

userAgent
用来识别浏览器名称,版本,引擎以及操作系统等信息的内容

var explorer = navigator.userAgent;
console.log(explorer);
//Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.101 Safari/537.36

你可能感兴趣的:(JavaScript-基础篇(二)之DOM&BOM)