14.2.2 HTML元素之间常见的包含关系
有些HTML元素之间可以互相嵌套,例如<div>元素可以互相嵌套;但有些HTML元素则不可
互相嵌套,例如<td>元素只能作为<tr>元素的子元素,<option>元素只能作为<select>
元素的子元素。
HTML文档中还有两个对象体系:表单对象和表格对象。
表单对象里可以包含基本的输入对象,还可以包含<select>元素,<select>元素可以
包含多个<option>元素。
表格对象里可以包含标题(HTMLTableCaptionElement)控件,还可以包含多个表格
行(HTMLTableColElement)空间,每个表格行又可以包含多个单元格(HTMLTableCellElement)
控件。
14.3 访问HTML元素
为了动态地修改HTML元素,必须能访问HTML元素,DOM提供了两种方式来访问HTML元素。
根据ID访问HTML元素。
利用节点关系访问HTML元素。
前一种方式简单易用,主要有document提供的getElementById()方法来完成;后一种方式
则利用树节点之间的父子、兄弟关系来访问。
14.3.1 根据ID访问HTML元素
根据ID访问HTML元素由如下方法实现:
document.getElementById(idVal):返回文档中id属性值为idVal的HTML元素。
14.3.2 利用节点关系访问HTML元素
利用节点关系访问HTML元素的属性和方法如下:
Node parentNode:返回当前节点的父节点。只读属性。
Node perviousSibling:返回当前节点的前一个兄弟节点。只读属性。
Node nextSibling:返回当前节点的后一个兄弟节点。只读属性。
Node[] childNodes:返回当前节点的所有子节点。只读属性。
Node[] getElementsByTagName(tagName):返回当前节点的具有指定标签名的所有子节点。
Node firstChild:返回当前节点的第一个子节点。只读属性。
Node lastChild:返回当前节点的最后一个子节点。只读属性。