规定
整个文档是一个文档节点
每个 HTML 标签是一个元素节点
包含在 HTML 元素中的文本是文本节点
每一个 HTML 属性是一个属性节点
注释属于注释节点
node节点
节点彼此都有等级关系。
HTML 文档中的所有节点组成了一个文档树(或节点树)。
HTML 文档中的每个元素、属性、文本等都代表着树中的一个节点。
树起始于文档节点,并由此继续伸出枝条,直到处于这棵树最低级别的所有文本节点为止。
文档树
<html>
<head>
<title>DOM Tutorial</title>
</head>
<body>
<h1>DOM Lesson one</h1>
<p>Hello world!</p>
</body>
</html>
上面所有的节点彼此间都存在关系。
除文档节点之外的每个节点都有父节点。
举例, 和 的父节点是 节点,文本节点 "Hello world!" 的父节点是
节点。
大部分元素节点都有子节点。
比方说, 节点有一个子节点:
节点。<title> 节点也有一个子节点:文本节点 "DOM Tutorial"。<br>
当节点分享同一个父节点时,它们就是同辈(同级节点)。<br>
比方说,<h1> 和 <p>是同辈,因为它们的父节点均是 <body> 节点。<br>
节点也可以拥有后代,后代指某个节点的所有子节点,或者这些子节点的子节点,以此类推。<br>
比方说,所有的文本节点都是 <html>节点的后代,而第一个文本节点是 <head> 节点的后代。<br>
节点也可以拥有先辈。先辈是某个节点的父节点,或者父节点的父节点,以此类推。<br>
比方说,所有的文本节点都可把 <html> 节点作为先辈节点。</p>
<h4 id="节点访问">节点访问</h4>
<p>getElementById() 和 getElementsByTagName() 这两种方法,可查找整个 HTML 文档中的任何 HTML 元素。<br>
这两种方法会忽略文档的结构。假如您希望查找文档中所有的 <p> 元素,getElementsByTagName() 会把它<br>
们全部找到,不管 <p> 元素处于文档中的哪个层次。同时,getElementById() 方法也会返回正确的元素,不<br>
论它被隐藏在文档结构中的什么位置。</p>