我理解的BOM

简介: BOM(Browser ObjectModel) 是指浏览器对象模型,是用于描述这种对象与对象之间层次关系的模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。BOM由多个对象组成,其中代表浏览器窗口的Window对象是BOM的顶层对象,其他对象都是该对象的子对象。

上一篇说道DOM的基础知识,这次我们继续从概念上理解JS的内容,给大家带来BOM。


  百度一下:

  BOM(Browser ObjectModel) 是指浏览器对象模型,是用于描述这种对象与对象之间层次关系的模型,浏览器对象模型提供了独立于内容的、可以与浏览器窗口进行互动的对象结构。BOM由多个对象组成,其中代表浏览器窗口的Window对象是BOM的顶层对象,其他对象都是该对象的子对象。


  联系上一篇DOM的知识,JS进行DOM操作包括两个方面的内容:

  Browser对象(BOM)浏览器窗口:

  操作浏览器的url,前进,后退。


  格式:Window.***,因为bom操作的对象是浏览器窗口(window),所以,可以直接使用;


  Html dom:浏览器中的白色区域内的所有内容:

  document,狭义的dom:html开始到html结束 htmldom,是bom的一部分;


  格式:(Window.)document.***


20161104205811724.png


为什么说是狭义的dom呢?

在上一篇中我们说过DOM是W3C的标准,定义了HTML和XML文档的标准,所以,DOM


不是只针对HTML。


W3C DOM 标准其实被分为 3 个不同的部分:


核心 DOM - 针对任何结构化文档的标准模型


XML DOM - 针对 XML 文档的标准模型


HTML DOM - 针对 HTML 文档的标准模型


我们在这里说的狭义的dom,即html dom。


一张图来解释它们之间的关系:


20161104205845220.png

 


history:浏览器的浏览历史;


location对象:代表当前显示的文档的地址;


Navigator对象:提供有关浏览器的各种信息;


Screen对象:提供有关浏览器的各种信息如坐标信息;


Frames[]:为window对象的数组型属性,每一个数组元素对应框架集9frameset0中的一个框架(frame)所对应的窗口。这些框架在HTML中使用标签<frames>即可添加;


以上是我从概念上对Bom的理解,接下来就期待在代码中的实现了。


推荐阅读:


http://blog.csdn.net/java_zhaoyanli/article/details/50959338


http://wenku.baidu.com/link?url=Y481Kv_nguXBThv0j0cqnWYISgVIfBv3gLISFKqXytsFkqNWb0pSsMNkDDa8Uki6mRsatuRF4_hzYmFppy7iH-_yTKmIYIS5j9xgthvou1e


































相关文章
|
6月前
|
存储 缓存 JavaScript
|
4月前
|
JavaScript 安全 物联网
DOM 和 BOM 在项目中的应用
【10月更文挑战第19天】在现代网页开发和应用项目中,DOM(文档对象模型)和 BOM(浏览器对象模型)扮演着至关重要的角色。它们为开发者提供了与网页文档和浏览器环境进行交互的能力,使项目能够实现丰富的功能和用户体验。
|
编解码 JavaScript 前端开发
BOM编程
BOM编程
|
JavaScript
BOM操作
BOM操作
261 0
|
JavaScript 前端开发 网络协议
【BOM】
【BOM】
89 0
|
JavaScript 前端开发
|
JavaScript 前端开发 UED
BOM常见方法
BOM常见的方法 window对象常见的事件 窗口加载事件onload
|
JavaScript 前端开发 Go
BOM 总结介绍
BOM 总结介绍
212 0
BOM 总结介绍
|
JavaScript C++
VS2017使用utf-8+BOM的编码格式
VS2017使用utf-8+BOM的编码格式
573 0
VS2017使用utf-8+BOM的编码格式