XML DOM firstChild- Eigenschaft
❮ Dokumentobjekt
Beispiel
Das folgende Codefragment lädt „ books.xml “ in xmlDoc und zeigt den Knotennamen und den Knotentyp des ersten untergeordneten Knotens an:
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myFunction(this);
}
};
xhttp.open("GET", "books.xml", true);
xhttp.send();
// Check if the first node is an element node
function get_firstchild(n)
{
var x = n.firstChild;
while (x.nodeType
!= 1) {
x = x.nextSibling;
}
return x;
}
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var x = get_firstchild(xmlDoc);
document.getElementById("demo").innerHTML =
"Nodename:
" + x.nodeName +
" (nodetype: " + x.nodeType + ")<br>";
}
Die Ausgabe des obigen Codes lautet:
Nodename: bookstore (nodetype: 1)
Definition und Verwendung
Die firstChild-Eigenschaft gibt den ersten untergeordneten Knoten des Dokuments zurück.
Syntax
documentObject.firstChild
Tipps und Hinweise
Hinweis: Firefox und die meisten anderen Browser behandeln leere Leerzeichen oder neue Zeilen als Textknoten, Internet Explorer nicht. Im Beispiel unten haben wir also eine Funktion, die den Knotentyp des ersten untergeordneten Knotens überprüft.
Elementknoten haben einen nodeType von 1. Wenn also der erste untergeordnete Knoten kein Elementknoten ist, wird er zum nächsten Knoten verschoben und überprüft, ob dieser Knoten ein Elementknoten ist. Dies wird fortgesetzt, bis der erste untergeordnete Knoten (der ein Elementknoten sein muss) gefunden wird. Auf diese Weise wird das Ergebnis in allen Browsern korrekt sein.
Tipp: Um mehr über die Unterschiede zwischen Browsern zu erfahren, besuchen Sie unser Kapitel DOM-Browser in unserem XML-DOM-Tutorial.
Demos zum Ausprobieren
❮ Dokumentobjekt