Hauptmenü

Untermenü

JavaScript - Objektreferenz - document - node

1. Das Objekt

node ist das zentrale Objekt, um einzelne Knoten eines HTML-Dokuments anzusteuern. Um auf die Eigenschaften und Methoden zugreifen zu können, benötigt man einige Methoden des document-Objektes. Da es sich bei diesem Thema um ein sehr komplexes handelt, zeige ich euch erst mal nur eine Auswahl. Die komplette Liste findet ihr bei SelfHTML. Außerdem ist unter dem Punkt DOM-Manipulation mittlerweile eine ausführliche Einführung zu diesem Thema erschienen.

Ein Hinweis

Dieses Objekt kann man nicht über node ansteuern. Stattdessen greift man auf ein Element zu und nutzt erst dann die entsprechenden Eigenschaften und Methoden.

2. Eigenschaften

childNodes

Firefox Opera Safari Google Chrome Internet Explorer

Speichert alle verfügbaren Kindknoten und deren Inhalt in einem Array.


<div id="blubb">
  Kräh <strong>bla</strongschwall <span>blubb</spanblubber
</div>
...
// Gibt die Anzahl der Kindknoten aus
alert (document.getElementById('blubb').childNodes.length);

data

Firefox Opera Safari Google Chrome Internet Explorer

Gibt den Inhalt eines Knotens aus, wenn es sich dabei um Text handelt.


<div id="blubb">
   Kräh bla schwall blubb blubber
</div>
...
alert (document.getElementById('blubb').firstChild.data);

firstChild, lastChild

Firefox Opera Safari Google Chrome Internet Explorer

Liefert das Objekt des ersten bzw. letzten Kindknotens eines Knotens.


<ul>
  <li>blubb</li>
  <li>blubber</li>
</ul>
...
alert (document.getElementsByTagName("ul")[0].lastChild.data);

nodeName, nodeValue, nodeType

Firefox Opera Safari Google Chrome Internet Explorer

nodeName liefert den Namen des Knotens, nodeValue den Inhalt und nodeType eine Ziffer für die Art des Knotens. Was nun jetzt welche Zahl bedeutet, erfahrt ihr zum Beispiel hier.


<p id="blubb" align="center">bla bla</p>
...
document.getElementsByTagName("body")[0].firstChild.nodeName;
document.getElementById("blubb").firstChild.nodeValue;

3. Methoden

appendChild, removeChild

Firefox Opera Safari Google Chrome Internet Explorer

Erzeugt einen neuen bzw. löscht einen alten Kindknoten.


<ul id="listing"><li>Punkt 1</li></ul>
...
bla document.getElementById('listing');
bla.removeChild(bla.firstChild);
bla.appendChild(document.createElement('li'));

appendData, deleteData

Firefox Opera Safari Google Chrome Internet Explorer

Fügen einem Textknoten Daten hinzu oder löschen sie.


<p id="schwafel">Kräh bla schwall</p>
...
bla document.getElementById('schwafel');

zufueg document.createTextNode(' blubb blubber');
bla.firstChild.appendData(zufueg.nodeValue);
...
zeichen bla.firstChild.nodeValue.length;
bla.firstChild.deleteData(0zeichen);

hasChildNodes

Firefox Opera Safari Google Chrome Internet Explorer

Überprüft, ob ein Knoten weitere Kindknoten hat. Gibt im Erfolgsfall true zurück.


<p id="schwafel">Kräh bla schwall</p>
...
if (document.getElementById('schwafel').hasChildNodes())
...

zurück zum vorherigen Abschnitt weiter zum nächsten Abschnitt