JavaScript之DOM概念

一、DOM概念

  1.DOM是什么?

    1.1 起源。DOM起源于Netscape与Microsoft 公司的DHTML(动态HTML)。

    1.2 名词解释Document Object Model,文档对象模型,是针对HTML和XML文档的一个API(Application Programming Interface,应用程序编程接口)。类似于JDBC是针对数据库的一套API一样。

    1.3 功能DOM描绘了一个层次化的节点数,允许开发人员添加、移除和修改页面的某一部分。JavaScript 可以通过 DOM 来访问和操作HTML文档所有的元素。

    1.4 与JavaScript的关系JavaScript是一种脚本语言,DOM是用来获得和操作HTML文档的节点属性JavaScript通常是通过DOM来获得和操作HTML属性的。这就是二者的区别与联系。

    

  2.DOM的分类:

    核心 DOM:定义了一套标准的可以针对任何文档的对象。

    HTML DOM:针对HTML文档的DOM。

    XML DOM:针对XML文档的DOM。

  3.DOM级别:

    DOM0不是W3C规范。

        Netscape Navigator 4和IE4分别发布于1997年的6月和10月发布的DHTML,他们是未形成标准的试验性质的初级阶段的DOM,称为dom0,并不是标准。

    DOM1开始成为W3C规范[1998.10]。专注于HTML文档和XML文档,为基本的文档结构及查询提供了接口

        DOM1是W3C在1998年制定的标准,DOM1级主要定义了HTML和XML文档的底层结构。在DOM1中,DOM由两个模块组成:DOM Core(DOM核心)和DOM HTML。其中,DOM Core规定了基于XML的文档结构标准,通过这个标准简化了对文档中任意部分的访问和操作。DOM HTML则在DOM核心的基础上加以扩展,添加了针对HTML的对象和方法,如:JavaScript中的Document对象。

        注意:IE中的所有DOM对象都是以COM(Component Object Model)对象的形式实现的。这意味着,IE中的DOM对象与原生JavaScript对象的行为或活动特点并不一致。

    DOM2:对DOM1增加了样式表对象视图事件处理

        DOM2级在原来DOM的基础上又扩充了鼠标、用户界面事件、范围、遍历等细分模块,而且通过对象接口增加了对CSS的支持。DOM1级中的DOM核心模块也经过扩展开始支持XML命名空间。在DOM2中引入了下列模块,在模块包含了众多新类型和新接口:

          DOM视图(DOM Views):定义了跟踪不同文档视图的接口

          DOM事件(DOM Events):定义了事件和事件处理的接口。规定了事件流:捕获(NetScape) + 处于目标阶段 + 冒泡阶段(IE)

          DOM样式(DOM Style):定义了基于CSS为元素应用样式的接口 DOM遍历和范围(DOM Traversal and Range):定义了遍历和操作文档树的接口

    DOM3:对DOM2增加了内容模型 (DTD 、Schemas) 、文档验证和DOM核心扩展

         DOM3进一步扩展了DOM,在DOM3中引入了以下模块:

          DOM加载和保存模块(DOM Load and Save):引入了以统一方式加载和保存文档的方法

          DOM验证模块(DOM Validation):定义了验证文档的方法

          DOM核心的扩展(DOM Style):支持XML 1.0规范,涉及XML Infoset、XPath和XML Base

二、引用文献

  [DOM DOM0 DOM1 DOM2 DOM3 简单介绍](http://blog.csdn.net/brucebaozhiqiang/article/details/26136615)

原文地址:https://www.cnblogs.com/johnnyzen/p/7895452.html