BOM 浏览器对象模型

一、BOM概述

BOM即浏览器对象模型,它提供了独立于内容而与浏览器窗口进行交互的对象,其核心对象是window

BOM缺乏标准,JavaScript语法标准化组织是ECMA,DOM标准化组织是W3C,BOM最初是Netscape浏览器标准的一部分

2、BOM构成

BOM 比DOM大,它包含DOM

window 对象是浏览器的顶级对象,它具有双重角色

1、它是JS 访问浏览器窗口的一个接口

2、他是一个全局对象。定义在全局作用域中的变量、函数都会变成window对象的属性和方法

在调用时可以省略window,前面学习的对话框都都属于window对象方法,如alert()、prompt()等

注意:window下的一个特殊属性 window.name

二、window 对象的常见事件

   1、窗口加载事件

window.onload 是窗口(页面)加载事件,当文档内容全部加载完成会触发该事件(包括图像,脚本文件、css文件等),就调用的处理函数。

注意:

1、有了window.onload 就可以把JS代码写到页面元素的上方,因为onload 是等页面内容全部加载

完毕,再去执行处理函数。

2、window.onload 传统注册事件方式只能写一次,如果有多个,会以最后一个window.onload 为准。

3、如果使用addEventListener 则没有限制

2、调整窗口大小事件

三、定时器

1、setTimeout( )定时器

5秒后自动关闭的广告

3、停止 setTimeout()计时器

4、setLnterval()定时器

setTimeout 延迟时间到了,就去调用这个函数,只调用一次,就结束了这个定时器

setInterval 每隔这个延时时间,就去调用这个回调函数,会调用很多次,重复调用这个函数

        倒计时案例

5、停止 setInterval()定时器

        发送短信案例

6、this 

this 的指向在函数定义的时候是确定不了的,只有函数执行时候才能确定this到底指向谁,一般情况下this 的最终指向的是那个调用它的对象

1、全局作用域或者普通函数中this指向全局对象window(注意定时器里面的this指向window)

2、方法调用中谁调用this指向谁

3、构造函数中this指向的是实例对象

四、JS 执行机制

1、JS 是单线程

2、同步和异步

        同步

同步任务都在主线程上执行,形成一个执行栈

        异步

异步任务相关回调函数添加到任务队列(消息队列)

3、JS 执行机制

1、先执行执行栈中的同步任务

2、异步任务(回调函数)放入任务队列中

3、一旦执行栈中所有的同步任务执行完毕,系统就会按照次序读取任务队列中的异步任务,于是被读取的异步任务结束等待状态,进入执行栈开始执行。

五、location 对象

1、什么是location对象

window对象给我们提供了一个location 属性用于获取或设置窗体的URL,并且可以用于解析URL。因为这个属性返回的是一个对象,所以我们将这个属性也称为location对象

2、URL

统一资源定位符

是互联网上标准资源的地址,互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件

的位置以及浏览器应该怎样处理它。

3、location 对象属性

href 和 search

        5秒后跳转页面案例

     
           获取URL参数

4、location 对象的方法

六、navigator 对象

七、history 对象

与浏览器历史记录进行交互。该对象包含用户(在浏览器窗口中)访问过的URL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值