ParentNode - 包含所有拥有子级的 Node 的对象共有的方法和属性

ParentNode mixin 包含所有拥有子级的 Node 的对象共有的方法和属性。它由 ElementDocumentDocumentFragment 对象实现。

请参阅使用选择器定位 DOM 元素,了解如何使用 CSS 选择器查找节点或感兴趣的元素。

属性

ParentNode.childElementCount 只读

返回此 ParentNode 的子元素数。

ParentNode.children 只读

返回一个实时 HTMLCollection,其中包含所有 Element 对象,这些对象是此 ParentNode 的子元素,并忽略其所有非元素节点。

ParentNode.firstElementChild 只读

返回第一个节点,该节点既是此 ParentNode 的子节点,并且也是一个 Element,如果没有则为 null

ParentNode.lastElementChild 只读

返回最后一个节点,该节点既是此 ParentNode 的子节点,并且也是一个 Element,如果没有则为 null

方法

ParentNode.append()

ParentNode 的最后一个子元素之后插入一组 Node 对象或 DOMString 对象。将 DOMString 对象作为等效的 Text 节点插入。

ParentNode.prepend()

ParentNode 的第一个子节点之前插入一组 Node 对象或 DOMString 对象。将 DOMString 对象作为等效的 Text 节点插入。

ParentNode.querySelector()

返回第一个 Element,其中当前元素为根,与指定的选择器组匹配。

ParentNode.querySelectorAll()

返回一个 NodeList,该元素代表与当前选择器组匹配的,以当前元素为根的元素列表。

规范

规范 状态 备注
DOM
ParentNode 的定义
现行的标准 ElementTraversal 接口拆分为 ChildNodeParentNode。现在在后者上定义了 ParentNode.firstElementChildParentNode.lastElementChildParentNode.childElementCount 属性。添加了 ParentNode.children 属性,以及 ParentNode.querySelector()ParentNode.querySelectorAll()ParentNode.append()ParentNode.prepend() 方法。
Element Traversal Specification
ElementTraversal 的定义
已过时 ElementTraversal 纯接口中添加了其属性的初始定义,并在 Element 上使用了它。

桌面浏览器兼容性

特性ChromeEdgeFirefoxInternet ExplorerOperaSafari
基础支持1 支持3.59104
append541749 不支持3910
childElementCount1 支持3.59104
children1 支持3.591104
Support on Document and DocumentFragment29 未知25 不支持16 不支持
firstElementChild1 未知3.59104
lastElementChild1 支持3.59104
prepend541749 不支持3910
querySelectorAll1 支持3.592104

移动浏览器兼容性

特性AndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
基础支持 支持 支持 未知4 未知 支持 支持
append5454 未知49 未知4110
childElementCount 支持 支持 未知4 未知 支持 支持
children 支持 支持 未知4 未知 未知9
Support on Document and DocumentFragment 支持 支持 未知 未知 未知 未知 不支持
firstElementChild 支持 支持 未知4 未知 支持 支持
lastElementChild 支持 支持 未知4 未知 支持 支持
prepend5454 未知49 未知4110
querySelectorAll 支持 支持 未知 支持 未知10.13.2

1. Internet Explorer 6、7 和 8 支持它,但错误地包括了Comment节点。

2. Internet Explorer 8 仅支持 CSS2 选择器。

相关链接