BOM = Browser Object Model 浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是 windowBOM 由一系列相关的对象构成,并且每个对象都提供了很多方法与属性BOM 缺乏标准,JavaScript 语法的标准化组织是 ECMA, DOM 的标准化组织是 W3C, BOM最初是Netscape 浏览器标准的一部分。
二、window 对象的常见事件 2.1、窗口加载事件window.onload
是窗口(页面)加载事件,当文档内容完全加载完成会触发该事件(包括图像,脚本文件,CSS文件等),就调用的处理函数。
window.onload = function(){
};
// 或者
window.addEventListener("load",function(){});
注意:
有了window.onload就可以把JS代码写到页面元素的上方
因为onload是等页面内容全部加载完毕,再去执行处理函数
window.onload 传统注册事件方式,只能写一次
如果有多个,会以最后一个window.onload为准
如果使用addEventListener 则没有限制
document.addEventListener('DOMContentLoaded',function(){})
接收两个参数:
DOMCountentLoaded事件触发时,仅当DOM加载完成,不包括样式表,图片,flash等等
如果页面的图片很多的话, 从用户访问到onload触发可能需要较长的时间
交互效果就不能实现,必然影响用户的体验,此时用 DOMContentLoaded事件比较合适。
2.1.1、区别load等页面内容全部加载完毕,包括页面dom元素,图片,flash,css等
DOMContentLoaded
是DOM加载完毕,不包含图片 flash css 等就可以执行,加载速度比load更快一些
window.onresize
是调整窗口大小加载事件,当触发时就调用的处理函数
window.onresize = function() {}
// 或者
window.addEventListener('resize',function(){});
三、定时器
window 对象给我们提供了两个定时器
setTimeout()
setInterval()
setTimeout()
方法用于设置一个定时器,该定时器在定时器到期后执行调用函数。
window.setTimeout(调用函数,[延迟的毫秒数]);
注意:
window可以省略
这个调用函数
可以直接写函数或者写函数名或者采取字符串 ‘函数名()’ (不推荐)
延迟的毫秒数省略默认是0,如果写,必须是毫秒
因为定时器可能有很多,所以我们经常给定时器赋值一个标识符
setTimeout() 这个调用函数我们也称为回调函数 callback
普通函数是按照代码顺序直接调用,而这个函数,需要等待事件,事件到了才会去调用这个函数,因此称为回调函数。
3.2、clearTimeout()停止定时器
clearTimeout()
方法取消了先前通过调用 setTimeout()
建立的定时器
window.clearTimeout(timeoutID)
3.3、setInterval()定时器
setInterval()
方法重复调用一个函数,每隔这个时间,就去调用一次回调函数
window
可以省略
这个回调函数:可以直接写函数或者写函数名或者采取字符 ‘函数名()’
window.setInterval(回调函数,[间隔的毫秒数]);
3.4、clearInterval()停止定时器
clearInterval ( )
方法取消了先前通过调用 setInterval()
建立的定时器
注意:
window
可以省略
里面的参数就是定时器的标识符
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)