1、BOM操作
BOM:浏览器对象模型(核心),用于操作浏览器的相关信息
window对象:JS操作浏览器的接口,也是JAVASCRIPT的global对象。
1)var demo = 'hhh';
等价于 window.demo = 'hhh',两者没什么区别
但是前者不能使用delete 来删除demo变量,后者可以删除。
兼容性问题: delete 在IE9之前都不兼容,使用会报错
2)直接使用未初始化的变量会报错,
但是用 var demo = window.ss ,,这样来访问未初始化的ss 只会显示undefined
(因为这样的形式,意思指查询window对象是否有ss这个属性)
2、window对象方法
1)alert(警告框) 2)prompt(提示输入框) 3)confirm(确认框) 4) open (跳转)
5)close(关闭窗口)6)setInterval(定时器) 7)clearInterval(清除定时器) 8.setTimeout(延时器)
9)clearTimeout(清除延时器)
3、window对象延伸的对象
1)document (文档对象)
可以通过document的对象来操作HTML结构,获取内容、修改内容等
document.getElementById() //提取节点
。。。。。。
2)history (历史对象)
可以来访问历史记录,实现跳转等
history.go() history.forward() history.back() history.length()
history.go() 参数若为-1,则是访问上一个访问过的页面,为1,则是访问下一个访问过的;
history.forward() 访问下一个访问过的;
history.back() 访问上一个访问过的;
history.length() 历史记录长度
3)navigator(获取客户端用户信息)
(主要)属性:appName(浏览器的公司或者是NetScape)
userAgent(客户端用户代理信息,浏览器、操作系统的信息)
platform(浏览器所在的系统平台)
。。。。
4)location对象(当前加载文档的有关信息)
location对象是window对象的属性,也是document对象的属性
所以window.location 和 document.location等效
window.location.href()等价于open();
search 方法:获取?后面的内容
assgin():跳转到指定页面,也href等效
reload():重载当前页面,没有参数时,重载本地缓存;参数为true时,向服务器重新加载;
replace():用新的URL代替当前页面(可以避免产生历史记录)
5)screen对象(表明客户端能力)
(略)
6)frame对象(框架)
(略)
4、scorll事件
document.body.scrollTop:获取当前滚动离顶部的距离(支持谷歌)
document.documentElement.scrollTop(不支持guge)