--- title: ParentNode slug: Web/API/ParentNode tags: - API - DOM - Finding Elements - Finding Nodes - Interface - Locating Elements - Locating Nodes - Managing Elements - Managing Nodes - Mixin - Node - ParentNode - Reference - Selectors translation_of: Web/API/ParentNode ---
{{APIRef("DOM")}}

ParentNode ミックスインは、子を持つことができるすべての型の {{domxref("Node")}} オブジェクトに特有のメソッドやプロパティを含みます。これは、{{domxref("Element")}} と {{domxref("Document")}}、{{domxref("DocumentFragment")}} オブジェクトに実装されています。

対象のノードや要素を見つけるためにCSS セレクターを使用する方法について、詳しくはセレクタを使用した DOM 要素の指定をご覧ください。

プロパティ

{{domxref("ParentNode.childElementCount")}} {{readonlyInline}}
オブジェクトが持つ子の数を表す unsigned long 値を返します。
{{domxref("ParentNode.children")}} {{readonlyInline}}
この ParentNode の子であるすべての {{domxref("Element")}} 型のオブジェクトを含む実際の {{domxref("HTMLCollection")}} を返します。要素ではないノードは省きます。
{{domxref("ParentNode.firstElementChild")}} {{readonlyInline}}
この ParentNode の最初の子である {{domxref("Element")}} を返します。存在しない場合は null を返す。
{{domxref("ParentNode.lastElementChild")}} {{readonlyInline}}
この ParentNode の最後の子である {{domxref("Element")}} を返します。存在しない場合は null を返す。

メソッド

{{domxref("ParentNode.append()")}} {{experimental_inline}}
ParentNode の最後の子の後ろに、{{domxref("Node")}} オブジェクトまたは {{domxref("DOMString")}} オブジェクトのセットを挿入します。{{domxref("DOMString")}} オブジェクトは、同等の {{domxref("Text")}} ノードとして挿入されます。
{{domxref("ParentNode.prepend()")}} {{experimental_inline}}
ParentNode の最初の子の前に、{{domxref("Node")}} オブジェクトまたは {{domxref("DOMString")}} オブジェクトのセットを挿入します。{{domxref("DOMString")}} オブジェクトは、同等の {{domxref("Text")}} ノードとして挿入されます。
{{domxref("ParentNode.querySelector()")}}
現在の要素をルートとして、指定したセレクターのグループにマッチする最初の {{domxref("Element")}} を返します。
{{domxref("ParentNode.querySelectorAll()")}}
現在の要素をルートとして、指定したセレクターのグループにマッチする要素のリストを表す {{domxref("NodeList")}} を返します。
{{domxref("ParentNode.replaceChildren()")}}
ノードの既存の子ノードを、指定した新しい子ノードのセットに入れ替えます。

仕様

仕様書 状況 コメント
{{SpecName('DOM WHATWG', '#parentnode', 'ParentNode')}} {{Spec2('DOM WHATWG')}} ElementTraversal インターフェイスを {{domxref("ChildNode")}} と {{domxref("ParentNode")}} に分割しました。{{domxref("ParentNode.firstElementChild")}} と {{domxref("ParentNode.lastElementChild")}}、{{domxref("ParentNode.childElementCount")}} プロパティは、後者で定義されていません。
{{domxref("ParentNode.children")}} プロパティが追加されました。
{{domxref("ParentNode.querySelector()")}}、{{domxref("ParentNode.querySelectorAll()")}}、{{domxref("ParentNode.append()")}}、{{domxref("ParentNode.prepend()")}} メソッドが追加されました。
{{SpecName('Element Traversal', '#interface-elementTraversal', 'ElementTraversal')}} {{Spec2('Element Traversal')}} ElementTraversal 基本インターフェイスにこのプロパティの初期定義が追加され、{{domxref("Element")}} で使われます。

ブラウザー実装状況

{{Compat("api.ParentNode")}}

関連項目