BOM------第七周

目录

一、BOM概述

二、窗口事件

1、窗口加载事件

2、窗口大小事件

三、定时器

1、window.setTimeout(调用函数,延迟的毫秒数)定时器

2、window.setInterval(回调函数,延迟的毫秒数)定时器

四、this指向问题

五、JS执行机制

六、location对象

1、location对象属性

2、location对象的方法

七、navigator对象 

八、history对象


一、BOM概述

BOM 是 Browser Object Model,浏览器对象模型。
DOM 是为了操作文档出现的接口,那 BOM 顾名思义其实就是为了控制浏览器的行为而出现的接口。比如跳转到另一个页面、前进、后退等等,程序还可能需要获取屏幕的大小之类的参数。 BOM 就是为了解决这些事情出现的接口。

二、窗口事件

1、窗口加载事件

window.onload = function(  ){  }

多个window.onload事件以最后一个为准

用多个addEventlistener("load",function( ){ })不会引发冲突,load是在页面内容全部加载完成之后执行JS代码,所有都可以执行。

DomContentLoaded,是DOM加载完毕之后就可以执行。

2、窗口大小事件

window.onresize = function(  ){  }

用多个addEventlistener("resize",function( ){ })不会引发冲突,resize是在页面内容全部加载完成之后执行JS代码,所有都可以执行。

三、定时器

1、window.setTimeout(调用函数,延迟的毫秒数)定时器

调用函数可以直接写函数,也可以写函数名;

多个定时器一般都会设置标识符;

setTimeout函数也成为回调函数,是先经过时间之后才会执行函数;

停止setTimeout定时器使用  clearTimeout(定时器名字,即设定的标识符)

2、window.setInterval(回调函数,延迟的毫秒数)定时器

此定时器可以重复循环使用

停止setInterval定时器使用  clearsetInterval(定时器名字,即设定的标识符)

四、this指向问题

  • this在全局作用域或者是普通函数中一般都指向window
  • 方法调用中谁调用this就指向谁

五、JS执行机制

JS单线程处理任务;

新型JS出版了两种机制:

同步:前一个任务结束之后后一个任务才可以开始

异步:在同一时间内可以处理多个任务

本质区别:各个流程执行顺序不同

同步任务:都在主线程上执行,形成执行线

异步任务:一般通过回调实现(被添加到任务队列之中,但是不执行)

异步任务的3中类型:

  • 普通事件,如click,resize
  • 资源加载,如load,error
  • 定时器(上面两种)

事件循环:主线程不断的重复获得任务,之行任务,在获取任务,再执行。

六、location对象

location属性可以用于获取或设置窗体的URL,并且可以用于解析URL。

URL即统一资源定位符,是互联网上标准资源的地址。

1、location对象属性

location对象属性返回值
location.href获取或设置整个URL
location.host返回主机(域名)
location.port返回端口号
location.pathname返回路径
location.search返回参数
location.hash返回片段 #后面内容 常见于链接锚点

                     location.href  被赋值一个新的地址,会跳转到一个新的页面。

2、location对象的方法

location对象的方法返回值
location.assign()可以跳转页面(也称为重定向页面),可以后退
location.replace()替换当前页面,没有记录历史,不能后退页面
location.reload()重新加载页面,相当于刷新按钮

七、navigator对象 

navigator对象包含有关浏览器的信息,最常用的是uesrAgent。

navigator.uesrAgent.match,可以判断用户用什么浏览器打开页面。

八、history对象

window对象为我们提供了history对象,与浏览器历史进行交互,该对象包含用户访问过的URL.

history.forward()前进功能;history.back()后退功能;

history.go(1)前进一步;history.go(-1)后退一步;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值