在 W3C 推出 DOM 标准之前,市场上已经流行了不同版本的 DOM 规范,主要包括 IE 和 Netscape 两个浏览器厂商各自制订的私有规范,这些规范定义了一套文档结构操作的基本方法。虽然这些规范存在差异,但是思路和用法基本相同,如文档结构对象、事件处理方式、脚本化样式等。习惯上,我们把这些规范称为 DOM 0 级,虽然这些规范没有同义并实现标准化,但是得到所有浏览器的支持并被广泛应用。
1998 年 W3C 对 DOM 进行标准化,并先后推出了 3 个不同的版本,每个版本都是在上一个版本的基础上进行完善和扩展。但是在某些情况下,不同版本之间可能会存在不兼容的规定。
DOM 1 级
1998 年 10 月,W3C 推出 DOM 1.0 版本规范,作为推荐标准进行正式发布,主要包括两个子规范。
- DOM Core(核心部分):把 XML 文档设计为树形节点结构,并为这种结构的运行机制制订了一套规范化标准,同时定义了创建、编辑、操纵这些文档结构的基本属性和方法。
- DOM HTML:针对 HTML 文档、标签集合,以及与个别 HTML 标签相关的元素定义了对象、属性和方法。
DOM 2 级
2000 年 11 月,W3C 正式发布了更新后的 DOM 核心部分,并在这次发布中添加了一些新规范,于是人们就把这次发布的 DOM 称为 2 级规范。
2003 年 1 月,W3C 又正式发布了对 DOM HTML 子规范的修订,添加了针对 HTML 4.01 和 XHTML 1.0 版本文档中很多对象、属性和方法。W3C 把新修订的 DOM 规范同义称为 DOM 2.0 推荐版本,该版本主要包括 6 个推荐子规范。
- DOM2 Core:继承于 DOM Core 子规范,规定了 DOM 文档结构模型,添加了更多的特性,如针对命名空间的方法等。
- DOM2 HTML:继承于 DOM HTML,规定了针对 HTML 的 DOM 文档结构模型,并添加了一些属性。
- DOM2 Events:规定了与鼠标相关的事件(包括目标、捕获冒泡和取消)的控制机制,但不包含与键盘相关事件的处理部分。
- DOM2 Style(或 DOM2 CSS):提供了访问和操纵所有与 CSS 相关的样式及规则的能力。
- DOM2 Traversal 和 DOM2 Range:DOM2 Traversal 规范允许开发人员通过迭代方式访问 DOM,DOM2 Range 规范允许对指定范围的内容进行操作。
- DOM2 Views:提供了访问和更新文档表现(视图)的能力。
DOM 3 级
2004 年 4 月,W3C 发布了 DOM3 版本。DOM3 版本主要包括以下 3 个推荐子规范。
- DOM3 Core:继承于 DOM2 Core,并添加了更多的新方法和属性,同时修改了已有的一些方法。
- DOM3 Load and Save:提供将 XML 文档的内容加载到 DOM 文档中,以及将 DOM 文档序列化为 XML 文档的能力。
- DOM3 Validation:提供了确保动态生成的文档的有效性的能力,即如何符合文档类型声明。
访问 http://www.w3.org/2003/02/06-dom-support.html 页面会自动显示当前浏览器对 DOM 的支持状态。
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/21334.html