javascript的BOM

javascript的BOM

            ECMAScript是 JavaScript的核心,但若是要在 Web中使用 JavaScript,那么 BOM(浏览器对象模型)则无疑才是真正的核心。BOM 提供了不少对象,用于访问浏览器的功能,这些功能与任何网页内容无关。多年来,缺乏事实上的规范致使 BOM既有意思又有问题,由于浏览器提供商会按照各自的想法随意去扩展它。因而,浏览器之间共有的对象就成为了事实上的标准。这些对象在浏览器中得以存在,很大程度上是因为它们提供了与浏览器的互操做性。W3C为了把浏览器中 JavaScript最基本的部分标准化,已经将 BOM的主要方面归入了 HTML5的规范中。javascript

            ps:上面摘抄于《javascript高级程序设计》,BOM是浏览器的窗口对象,提供了不少窗口处理的API。在webapp框架愈来愈多的状况下,须要咱们在同一窗口处理不一样页面、不一样的ajax数据,则须要咱们熟悉BOM的内容。
html

一、window

        BOM 的核心对象是 window ,它表示浏览器的一个实例。在浏览器中, window 对象有双重角色,它既是经过 JavaScript 访问浏览器窗口的一个接口,又是 ECMAScript 规定的 Global 对象。java

下面是open的第三个字符串属性web

二、location

        location 是最有用的 BOM对象之一,它提供了与当前窗口中加载的文档有关的信息,还提供了一些导航功能。事实上, location 对象是很特别的一个对象,由于它既是 window 对象的属性,也是document 对象的属性;换句话说, window.location 和 document.location 引用的是同一个对象。location 对象的用处不仅表如今它保存着当前文档的信息,还表如今它将 URL 解析为独立的片断,让开发人员能够经过不一样的属性访问这些片断。ajax


三、history

        history 对象保存着用户上网的历史记录, 从窗口被打开的那一刻算起。 由于 history 是 window对象的属性,所以每一个浏览器窗口、每一个标签页乃至每一个框架,都有本身的 history 对象与特定的window 对象关联。出于安全方面的考虑,开发人员没法得知用户浏览过的 URL。不过,借由用户访问过的页面列表,一样能够在不知道实际 URL 的状况下实现后退和前进。编程

四、navigator

        最先由 Netscape Navigator 2.0引入的 navigator 对象,如今已经成为识别客户端浏览器的事实标准。虽然其余浏览器也经过其余方式提供了相同或类似的信息(例如,IE 中的 window.clientInfor-mation 和 Opera 中的 indow.opera ) ,但 navigator 对象倒是全部支持 JavaScript 的浏览器所共有的。与其余 BOM 对象的状况同样,每一个浏览器中的 navigator 对象也都有一套本身的属性。下图有navigator比较重要的信息浏览器

五、screen

        JavaScript 中有几个对象在编程中用处不大,而 screen 对象就是其中之一。 screen 对象基本上只用来代表客户端的能力,其中包括浏览器窗口外部的显示器的信息,如像素宽度和高度等。每一个浏览器中的 screen 对象都包含着各不相同的属性,下表列出了全部属性及支持相应属性的浏览器。直接用下面代码查看下就好了安全

<!DOCTYPE html>
<html>
<head>
<script>
	console.log(screen);
</script>
</head>
<body>
	screen
</body>
</html>
相关文章
相关标签/搜索