文档对象模型(DOM)是表示文档(比如HTML 和XML)和访问、操作构成文档的各种元素的应用程序接口(API)
一般的,支持 Javascrīpt 的所有浏览器都支持 DOM
本文所涉及的 DOM,是指 W3C 定义的标准的文档对象模型,它以树形结构表示HTML 和XML 文档,定义了遍历这个树和检查、修改树的节点的方法和属性
1、DOM 眼中的 HTML 文档:树 在 DOM 眼中,HTML 跟 XML 一样是一种树形结构的文档,是根(root)节点,、、是的子(children)节点,互相之间是兄弟(sibling)节点;下面才是子节点、、等等
如下图: 这个是不是跟 XML 的结构有点相似呢
不同的是,HTML 文档的树形主要包含表示元素、标记的节点和表示文本串的节点
2、HTML 文档的节点 DOM 下,HTML 文档各个节点被视为各种类型的 Node 对象
每个 Node 对象都有自己的属性和方法,利用这些属性和方法可以遍历整个文档树
由于 HTML 文档的复杂性,DOM 定义了 nodeType 来表示节点的类型
这里列出 Node 常用的几种节点类型: 接口 nodeType 常量 nodeType 值 备注 Element Node
ELEMENT_NODE 1 元素节点 Text Node
TEXT_NODE 3 文本节点 Document Node
DOCUMENT_NODE 9 document Comment Node
COMMENT_NODE 8 注释的文本 DocumentFragment Node
DOCUMENT_FRAGMENT_NODE 11 document 片断 Attr Node
ATTRIBUTE_NODE 2 节点属性 DOM 树的根节点是个Document 对象,该对象的documentElement 属