JavaScript的实现包括以下3个部分: | |
ECMAScript(核心) | 描述了JS的语法和基本对象。 |
文档对象模型 (DOM) | 处理网页内容的方法和接口 |
浏览器对象模型(BOM) | 与浏览器交互的方法和接口 |
BOM:
BOM是browser object model的缩写,简称浏览器对象模型
BOM 是为了操作浏览器出现的 API,window 是其的一个对象。
要让浏览器跳转到另一个页面,只需要 :location.href = "http://www.xxxx.com";这个 location 就是 BOM 里的一个对象
DOM:
DOM 全称是 Document Object Model,也就是文档对象模型。
DOM 是为了操作文档出现的 API,document 是其的一个对象;
是针对XML的基于树的API。描述了处理网页内容的方法和接口,是HTML和XML的API,DOM把整个页面规划成由节点层级构成的文档。
为了操作 HTML 中的元素,比如说我们要通过 JS 把这个网页的标题改了,直接这样就可以了:document.title = 'how to make love' ;
区别:
DOM 是为了操作文档出现的 API,document 是其的一个对象;
BOM 是为了操作浏览器出现的 API,window 是其的一个对象。
BOM是浏览器对象模型,DOM是文档对象模型,前者是对浏览器本身进行操作,而后者是对浏览器(可看成容器)内的内容进行操作
由于BOM的window包含了document,因此可以直接使用window对象的document属性,通过document属性就可以访问、检索、修改XHTML文档内容与结构。
因为document对象又是DOM(Document Object Model)模型的根节点。可以说,BOM包含了DOM(对象),浏览器提供出来给予访问的是BOM对象,从BOM对象再访问到DOM对象,从而js可以操作浏览
器以及浏览器读取到的文档.
DOM管理:
E区(由web开发人员呕心沥血写出来的一个文件夹,里面有index.html,CSS和JS什么鬼的,部署在服务器上,我们可以通过浏览器的地址栏输入URL然后回车将这个document加载到本地,浏览,右键查看源代码等)
BOM管理:
A区(浏览器的标签页,地址栏,搜索栏,书签栏,窗口放大还原关闭按钮,菜单栏等等)
B区(浏览器的右键菜单)
C区(document加载时的状态栏,显示http状态码等)
D区(滚动条scroll bar)