文档对象模型

文件物件模型（，缩写），是W3C组织推薦的处理可扩展置标语言和超文本标记语言的标准-{zh-hant:程式;zh-cn:编程}-接口。

Document Object Model的歷史可以追溯至1990年代後期微軟與Netscape的“瀏覽器大戰”（browser wars），雙方為了在JavaScript與JScript一決生死，於是大規模的賦予瀏覽器強大的功能。微軟在網頁技術上加入了不少專屬事物，既有VBScript、ActiveX、以及微軟自家的DHTML格式等，使不少網頁使用非微軟平台及瀏覽器無法正常顯示。DOM即是當時醞釀出來的傑作。

DOM (Document Object Model) 译为文档对象模型，是 HTML 和 XML 文档的编程接口。

HTML DOM 定义了访问和操作 HTML 文档的标准方法。

DOM 以树结构表达 HTML 文档。

W3C DOM 标准被分为 3 个不同的部分：

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

XML DOM 定义了所有 XML 元素的对象和属性，以及访问它们的方法。

HTML DOM

简介 
HTML DOM 是：

 HTML 的标准对象模型
 HTML 的标准编程接口
 W3C 标准

HTML DOM 定义了所有 HTML 元素的对象和属性，以及访问它们的方法。

换言之，HTML DOM 是关于如何获取、修改、添加或删除 HTML 元素的标准。

DOM方法

编程接口 
可通过 JavaScript （以及其他编程语言）对 HTML DOM 进行访问。

所有 HTML 元素被定义为对象，而编程接口则是对象方法和对象属性。

方法是您能够执行的动作（比如添加或修改元素）。

属性是您能够获取或设置的值（比如节点的名称或内容）。
一些常用的 HTML DOM 方法：

 getElementById(id) - 获取带有指定 id 的节点（元素）
 appendChild(node) - 插入新的子节点（元素）
 removeChild(node) - 删除子节点（元素）

DOM对象 
一些常用的 HTML DOM 属性：

 innerHTML - 节点（元素）的文本值
 parentNode - 节点（元素）的父节点
 childNodes - 节点（元素）的子节点
 attributes - 节点（元素）的属性节点

DOM属性 

 nodeType 属性
 nodeValue 属性
 innerHTML 属性

標準化 

W3C對DOM進行標準化的動作，目前已經推行至第四代。

Level 1 
 文档对象模型（DOM）1级规范 
 支援XML 1.0

Level 2 
 Document Object Model (DOM) Level 2 Core Specification 
 XML 1.0與命名空間
 Document Object Model (DOM) Level 2 HTML Specification 
 HTML 4.0x、XHTML 1.0
 Document Object Model (DOM) Level 2 Views Specification 
 Document Object Model (DOM) Level 2 Style Specification 
 支援CSS與CSS Level2
 Document Object Model (DOM) Level 2 Events Specification 
 支援HTML 4.01
 Document Object Model (DOM) Level 2 Traversal and Range Specification

Level 3 
 Document Object Model (DOM) Level 3 Core Specification
 Document Object Model (DOM) Level 3 Load and Save Specification 
 Document Object Model (DOM) Level 3 Validation Specification

Level 4 
 Document Object Model (DOM) Level 4

参考文献

外部連結 
  W3C Document Object Model

参见 
 SAX：Simple API for XML

XML
W3C标准
应用程序接口