XML DOM nextSibling-Attribut

Definition und Verwendung

Die nextSibling-Attribut gibt den nächsten gleichstufigen Knoten des ausgewählten Knotens zurück (den nächsten Knoten im gleichen Baumebene).

Falls kein solcher Knoten existiert, wird das Attribut NULL zurückgegeben.

Syntax:

elementNode.nextSibling

Hinweise und Anmerkungen

Anmerkung:Internet Explorer ignoriert die zwischen Knoten generierten Leerheitstextknoten (z.B. Zeilenumbrüche), während Mozilla dies nicht tut. Daher wird in den folgenden Beispielen eine Funktion verwendet, um den Knotenart des nächsten gleichstufigen Knotens zu überprüfen.

Der Knotenart des Elementknotens ist 1, daher wird, wenn der nächste gleichstufige Knoten kein Elementknoten ist, zum nächsten Knoten gesprungen und überprüft, ob dieser Knoten ein Elementknoten ist. Dieser Prozess wird fortgesetzt, bis der nächste gleichstufige Knoten gefunden ist. Diese Methode stellt sicher, dass korrekte Ergebnisse in Internet Explorer und Mozilla erhalten werden.

Für mehr Informationen über die Unterschiede zwischen IE und Mozilla-Browser besuchen Sie bitte das XML DOM-Tutorial auf CodeW3C.com DOM-Browser diesem Abschnitt.

Beispiel

In allen Beispielen verwenden wir das XML-Dokument books.xmlsowie der JavaScript-Funktion loadXMLDoc().

Der folgende Codeabschnitt ermittelt den nächsten gleichstufigen Knoten eines <title>-Elements im XML-Dokument:

//prüfen, ob der nächste Schwesterknoten ein Elementknoten ist
function get_nextsibling(n)
{
var x=n.nextSibling;
while (x.nodeType!=1)
 {
 x=x.nextSibling
 
return x;

xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("title")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.childNodes[0].nodeValue);
var y=get_nextsibling(x);
document.write("<br />Nächster Bruder: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);

Die Ausgabe des obigen Codes:

title = Everyday Italian
Nächster Bruder: author = Giada De Laurentiis