XML DOM nextSibling-eigenschap
Definitie en gebruik
De nextSibling-eigenschap retourneert de volgende gelijke knoop van de geselecteerde knoop (de volgende knoop op hetzelfde takniveau).
Als er geen dergelijke knoop bestaat, retourneert deze eigenschap NULL.
Syntax:
elementNode.nextSibling
Tips en opmerkingen
Opmerking:Internet Explorer negeert de lege tekstknopen die tussen knopen worden gegenereerd (bijvoorbeeld regeleindes), terwijl Mozilla dit niet doet. Daarom wordt in het volgende voorbeeld een functie gebruikt om het nodtype van de volgende gelijke node te detecteren.
Het nodtype van een elementnode is 1, dus als de volgende gelijke node geen elementnode is, wordt naar de volgende node verplaatst en wordt gecontroleerd of deze een elementnode is. Dit proces gaat door tot de volgende gelijke node is gevonden. Deze methode zorgt ervoor dat correcte resultaten worden verkregen in zowel Internet Explorer als Mozilla.
Voor meer informatie over de verschillen tussen IE en Mozilla-browsers, bezoek de XML DOM-tutorial op CodeW3C.com DOM-browser in deze sectie.
voorbeeld
In alle voorbeelden gebruiken we de XML-bestand books.xmlen de JavaScript-functie loadXMLDoc()。
De volgende codefragment haalt de volgende gelijke node van een <title>-element in een XML-document op:
//controleer of de volgende broersnode een elementnode is
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 />Next sibling: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);
The output of the above code is:
title = Everyday Italian Next sibling: author = Giada De Laurentiis