XML DOM nextSibling-egenskapen
Definition och användning
nextSibling-egenskapen kan returnera nästa element som följer efter en element (på samma trädnivå).
Om det inte finns någon sådan nod, returnerar egenskapen null.
Syntax:
nodeObject.nextSibling
Tips och kommentarer
Kommentar:Internet Explorer ignorerar blanka textnoder som genereras mellan noder (t.ex. nyckelrad), medan Mozilla inte gör det. Därför använder vi en funktion för att kontrollera nodtypen för den första barnnoden i följande exempel.
Elementnodernas nodtyp är 1, så om den första barnnoden inte är en elementnod, flyttas den till nästa nod och kontrolleras om den är en elementnod. Denna process fortsätter tills den första elementbarnnoden hittas. På detta sätt kan vi få rätt metod i Internet Explorer och Mozilla.
Tips:För mer information om skillnader mellan IE och Mozillas XML DOM, besök vår DOM-webbläsare kapitel.
exempel
I alla exempel kommer vi att använda XML-filer books.xmloch JavaScript-funktioner loadXMLDoc()。
Följande kodsnutt kan få nästa lika nivås syskonnod till den första <title>-elementet i XML-dokumentet:
//kontrollera om nästa syskonnod är en elementnod
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ästa jämliknande: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);
Utmatning:
title = Everyday Italian Nästa jämliknande: author = Giada De Laurentiis