--- title: ParentNode.childElementCount slug: Web/API/Element/childElementCount tags: - API - DOM - ParentNode - Property translation_of: Web/API/ParentNode/childElementCount original_slug: Web/API/ParentNode/childElementCount ---
読み取り専用の ParentNode.childElementCount
プロパティは、与えられた要素の子要素の数を表す unsigned long
値を返します。
このプロパティは、当初 {{domxref("ElementTraversal")}} 基本インターフェースで定義されていました。このインターフェースには 2 セットの異なるプロパティが含まれており、一つは子要素を持つ {{domxref("Node")}} を対象とし、もう一つはその子要素群を対象としたものでしたが、これらは 2 つの基本インターフェースである {{domxref("ParentNode")}} と {{domxref("ChildNode")}} に移されました。この際、childElementCount
は {{domxref("ParentNode")}} へ移されました。これは技術的な変更であり、互換性に影響を与えるものではありません。
var count = node.childElementCount;
count
unsigned long
型(つまり整数型)の戻り値.node
var foo = document.getElementById('foo'); if (foo.childElementCount > 0) { // Do something }
このプロパティは IE9 より前のバージョンでサポートされていません。IE9とSafariでは Document
と DocumentFragment
においてサポートされていません。
;(function(constructor) { if (constructor && constructor.prototype && constructor.prototype.childElementCount == null) { Object.defineProperty(constructor.prototype, 'childElementCount', { get: function() { var i = 0, count = 0, node, nodes = this.childNodes; while (node = nodes[i++]) { if (node.nodeType === 1) count++; } return count; } }); } })(window.Node || window.Element);
仕様書 | 状況 | コメント |
---|---|---|
{{SpecName('DOM WHATWG', '#dom-parentnode-childElementCount', 'ParentNode.childElementCount')}} | {{Spec2('DOM WHATWG')}} | ElementTraversal インターフェースを {{domxref("ChildNode")}} と ParentNode に分割。このメソッドは後者で定義されています。{{domxref("Document")}} と {{domxref("DocumentFragment")}} が新しいインターフェースを実装しました。 |
{{SpecName('Element Traversal', '#attribute-childElementCount', 'ElementTraversal.childElementCount')}} | {{Spec2('Element Traversal')}} | この初期定義は ElementTraversal 基本インターフェースに追加され、{{domxref("Element")}} で使用します。 |
{{Compat("api.ParentNode.childElementCount")}}