JavaScript/DOM/ParentNode/firstElementChild

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Die Eigenschaft firstElementChild enthält eine Referenz auf den ersten Kindknoten eines DOM Knotens, der ein Element ist. Sie kann auf allen DOM-Objekten verwendet werden, die die Schnittstelle ParentNode implementieren (d.h. die Objekte mit den Schnittstellen Document, DocumentFragment und Element).

Das firstElementChild ist nur selten mit dem firstChild identisch, da sich bei lesbar geschriebenem HTML vor dem Anfangs-Tag des Kindelements zumeist noch Leerraum befindet, der bereits einen Textknoten darstellt.

Syntax

ParentNode.firstElementChild


Anwendungsbeispiel

Soll der erste Kindknoten eines Elementes referenziert werden, bei dem es sich um ein Element handelt, dann kann dies unter Verwendung der Eigenschaft firstElementChild bewerkstelligt werden. Ihr Wert ist immer das erste Kindelement des Objektes über das sie angesprochen wird, oder null, wenn dieses Objekt über keine Kindknoten vom Typ Element verfügt.


Beispiel
<body>
  <main>
    <p>Das Element <code>MAIN</code> ist das erste Kindelement von <code>BODY</code>.</p>
  </main>
  <script>
const firstElement = document.body.firstElementChild;
console.log(firstElement.nodeName);   // MAIN
console.log(firstElement.tagName);    // MAIN
  </script>
</body>


Im gezeigten HTML Beispielfragment enthält das <body>-Element zwei Kindelemente: <main> und <script>.

Im Script wird zunächst über die gleichnamige Eigenschaft des Dokumentobjektes auf das body-Element zugegriffen. Auf diesem Objekt wird dann die Eigenschaft firstElementChild gelesen, wodurch man eine Referenz auf das <main>-Element erhält. Diese Referenz wird als Konstante firstElement gespeichert. Darüber wird dann die nodeName Eigenschaft gelesen und ausgegeben.

Da es sich um einen Elementknoten in einem HTML Dokument handelt, kann an Stelle des nodeName genauso gut der tagName verwendet werden, wie die dritte Scriptzeile zeigt.

Weblinks