BOM(Browser Object Model):浏览器对象模型,提供了一套操作浏览器功能的工具。
BOM包含的内容很多,但是很多东西都不太常用
window对象
- js的全局对象,又称顶级对象
- 在全局中声明的变量和函数,都是属于window
- DOM BOM都是属于window对象
- window对象很常用,一般省略不写
window.onload
- window.onload事件会在窗体加载完成后执行,通常我们称之为入口函数。
window.onload = function(){
//里面的代码会在窗体加载完成后执行。
//窗体加载完成包括文档树的加载、还有图片、文件的加载完成。
}
document.addEventListener('DOMContentLoaded', function () {
// 等待标签加载完毕就会触发
});
延时器与定时器
- setTimeout:延时器可以在延迟时间到期后执行一个指定的函数。
--设置
//语法:setTimeOut(callback, time);
//参数1:回调函数,时间到了就会执行。
//参数2:延时的时间
//返回:定时器的id,用于清除
//示例:
var timerId = setTimeOut(function(){
//1秒后将执行的代码。
}, 1000);
-- 清除
//语法:clearTimeOut(timerId)
//参数:定时器id
//示例:
clearTimeOut(timerId);//清除上面定义的定时器
- setInterval:方法重复调用一个函数或执行一个代码段,在每次调用之间具有固定的时间延迟。定时器除非清除,否则会一直执行下去。
对比延时器: 最大的不同在执行次数上不同 延时器: 一次 定时器: 一直执行 除非清除该定时器
-- 设置
//语法:var intervalID = setInterval(func, delay);
//参数1:重复执行的函数
//参数2:每次延迟的毫秒数
//返回:定时器的id,用于清除
//示例:
var timer = setInterval(function(){
//重复执行的代码。
}, 1000);
-- 清除
//语法:clearInterval(intervalID)
//参数:定时器id
//示例:
clearInterval(timer);//清除上面定义的定时器
location对象
- location对象也是window的一个属性,location其实对应的就是浏览器中的地址栏。
- 常用的属性和方法
location.href => 可以设置和获取页面的地址
location.search => 可以获取页面的参数
location.reload() => 重载页面
navigator对象
- window.navigator的一些属性可以获取客户端的一些信息
history对象
- history对象表示页面的历史
//后退:
history.back();
history.go(-1);
//前进:
history.forward();
history.go(1);