引用来自网络:java
DOM是一个使程序和脚本有能力动态地访问和更新文档的内容、结构以及样式的平台和语言中立的接口。浏览器
BOM定义了JavaScript能够进行操做的浏览器的各个功能部件的接口。cookie
DOM
(文档对象模型)是 HTML
和 XML
的应用程序接口(API
)。网络
BOM
主要处理浏览器窗口和框架,不过一般浏览器特定的 JavaScript
扩展都被看作 BOM 的一部分。这些扩展包括:框架
1
2
3
4
5
6
|
弹出新的浏览器窗口
移动、关闭浏览器窗口以及调整窗口大小
提供 Web 浏览器详细信息的定位对象
提供用户屏幕分辨率详细信息的屏幕对象
对 cookie 的支持
IE 扩展了 BOM,加入了 ActiveXObject 类,能够经过 JavaScript 实例化 ActiveX 对象
|
javacsript
是经过访问BOM
(Browser Object Model)对象来访问、控制、修改客户端(浏览器),因为BOM
的window
包含了document
,window对象的属性和方法是直接能够使用并且被感知的,所以能够直接使用window
对象的document
属性,经过document
属性就能够访问、检索、修改XHTML文档内容与结构。由于document
对象又是DOM(Document Object Model)模型的根节点。能够说,BOM包含了DOM
(对象),浏览器提供出来给予访问的是BOM对象,从BOM对象再访问到DOM
对象,从而js能够操做浏览器以及浏览器读取到的文档。其中
DOM包含:window
spa
1
2
3
|
Window对象包含属性:document、location、navigator、screen、history、frames
Document根节点包含子节点:forms、location、anchors、images、links
|
从window.document
已然能够看出,DOM的最根本的对象是BOM的window对象的子对象。.net
区别:DOM描述了处理网页内容的方法和接口,BOM描述了与浏览器进行交互的方法和接口。code