XML DOM nextSibling-eigenschap

Node object reference manual

Definitie en gebruik

De nextSibling-eigenschap kan het volgende element na een element retourneren (op dezelfde tak van de boom).

Als er geen dergelijk node is, retourneert de eigenschap null.

Syntax:

nodeObject.nextSibling

Tips en opmerkingen

Opmerking:Internet Explorer negeert de lege tekst nodes die tussen nodes worden gegenereerd (bijvoorbeeld, een enter-teken), terwijl Mozilla dit niet doet. Daarom gebruiken we in de volgende voorbeelden een functie om het nodeType van de eerste subnode te controleren.

De nodeType van een element node is 1, dus als de eerste subnode geen element node is, zal deze naar de volgende node verhuizen en vervolgens controleren of deze een element node is. Dit proces zal doorgaan tot de eerste element subnode wordt gevonden. Op deze manier kunnen we in Internet Explorer en Mozilla de juiste methode verkrijgen.

Tip:Voor meer informatie over de verschillen tussen de XML DOM van IE en Mozilla, bezoek onze DOM-browser hoofdstukken.

voorbeeld

In alle voorbeelden gebruiken we het XML-bestand books.xmlen de JavaScript-functie loadXMLDoc()

De volgende codefragment kan de volgende同级子节点 van het eerste <title> element in het XML-document ophalen:

//controleer of het volgende sibling node een element node 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);

Output:

title = Everyday Italian
Next sibling: author = Giada De Laurentiis

Node object reference manual