XML-DOM -lastChild- Eigenschaft
❮ Knotenobjekt
Beispiel
Das folgende Codefragment lädt „ books.xml “ in xmlDoc und zeigt den Knotennamen des letzten untergeordneten Knotens des Dokuments 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 last node is an
element node
function get_lastchild(n) {
var x = n.lastChild;
while (x.nodeType != 1) {
x = x.previousSibling;
}
return
x;
}
function myFunction(xml) {
var xmlDoc = xml.responseXML;
var x = get_lastchild(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 lastChild-Eigenschaft gibt den letzten untergeordneten Knoten des angegebenen Knotens zurück.
Syntax
nodeObject.lastChild
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 letzten untergeordneten Knotens überprüft.
Elementknoten haben einen nodeType von 1. Wenn also der letzte untergeordnete Knoten kein Elementknoten ist, wird er zum vorherigen Knoten verschoben und überprüft, ob dieser Knoten ein Elementknoten ist. Dies wird fortgesetzt, bis der letzte untergeordnete Knoten (der ein Elementknoten sein muss) gefunden ist. 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
❮ Knotenobjekt