BOM简介
什么是BOM(浏览器对象模型)
•ECMAScript无疑是JavaScript的核心,但是要想在浏览器中使用JavaScript,那么BOM(浏览器对象模型)才是真正的核心。
•BOM 提供了很多对象,用于访问浏览器的功能,这些功能与任何网页内容无关。
•BOM将浏览器中的各个部分转换成了一个一个的对象,我们通过修改这些对象的属性,调用他们的方法,从而控制浏览器的各种行为。
BOM对象
Window对象(代表整个浏览器窗口)
•window对象是BOM的核心,它表示一个浏览器的实例。
•在浏览器中我们可以通过window对象来访问操作浏览器,同时window也是作为全局对象存在的。
•全局作用域:–window对象是浏览器中的全局对象,因此所有在全局作用域中声明的变量、对象、函数都会变成window对象的属性和方法
Navigator对象(代表浏览器信息)
可以通过该对象识别不同浏览器。
•navigator对象包含了浏览器的版本、浏览器所支持的插件、浏览器所使用的语言等各种与浏览器相关的信息。
•我们有时会使用navigator的userAgent属性来检查用户浏览器的版本
Location对象(代表浏览器地址栏)
代表当前地址栏信息,通过Location可以获取地址栏信息,或者操作浏览器跳转页面。
•location对象提供了与当前窗口中加载的文档有关的信息,还提供了一些导航功能。
•href属性:–href属性可以获取或修改当前页面的完整的URL地址,使浏览器跳转到指定页面。
•assign() 方法–所用和href一样,使浏览器跳转页面,新地址错误参数传递到assign ()方法中
•replace()方法–功能一样,只不过使用replace方法跳转地址不会体现到历史记录中。
•reload() 方法–用于强制刷新当前页面
History对象(代表浏览器历史记录)
可以用过该对象操作浏览器历史记录。由于隐私原因,该对象无法获取具体的历史记录,只能操作浏览器向前一页和后一页翻页 。而且该操作只在当次访问有效。
•history 对象保存着用户上网的历史记录,从窗口被打开的那一刻算起。
•go()–使用go() 方法可以在用户的历史记录中任意跳转,可以向后也可以向前。
back()–向后跳转
•forward()–向前跳转
Screen对象(代表用户屏幕信息)
可以通过该对象可以获取到用户的显示器的相关属性。(移动端用的多)
•screen 对象基本上只用来表明客户端的能力,其中包括浏览器窗口外部的显示器的信息,如像素宽度和高度等。
•该对象作用不大,我们一般不太使用。
这些BOM对象在浏览器中都是作为window对象的属性保存的,可以通过window对象来使用,也可以直接使用。