target.childNodes; //得到target的全部子节点
target.children; //是一个只读属性,返回一个Node的子elements的活HTMLCollection
target.parentNode; //得到target的父节点
target.nextSibling; //获得target的下一个兄弟节点
target.previousSibling; //得到target的上一个兄弟节点
target.firstChild; //获得target的第一个子节点
target.lastChild; //获得target的最后一个子节点
target.childNodes 与 target.children的区别
Node.childNodes 返回包含指定节点的子节点的集合,该集合为即时更新的集合(live collection)。包括html节点,所有属性,文本。可以通过nodeType来判断是哪种类型的节点。
值 | 描述 |
---|---|
1 | 一个 元素 节点,例如 <p> 和 <div>。 |
3 | Element 或者 Attr 中实际的 文字 |
7 | 一个用于XML文档的 ProcessingInstruction ,例如 <?xml-stylesheet ... ?> 声明。 |
8 | 一个 Comment 节点。 |
9 | 一个 Document 节点。 |
10 | 描述文档类型的 DocumentType 节点。例如 <!DOCTYPE html> 就是用于 HTML5 的。 |
11 | 一个 DocumentFragment 节点 |
children 属性,非标准的,它返回指定元素的子元素集合,它只返回html节点,甚至不返回文本节点。且在所有浏览器下表现惊人的一致。和childNodes 一样,在firefox下不支持()取集合元素。因此如果想获取指定元素的第一个html节点,可以使用children[0]来替代上面的getFirst函数。需注意children在IE中包含注释节点。