XML DOM previousSibling egenskab
Definition og brug
previousSibling egenskaben returnerer den valgte nodes foregående同级 node (den foregående node i samme træ niveau).
Hvis der ikke findes en sådan node, returnerer denne egenskab null.
Syntaks:
elementNode.previousSibling
Vedvarende og bemærkninger
Bemærk:Internet Explorer ignorerer mellemrum mellem noder (f.eks. linjeskifts tegn), mens Mozilla ikke gør det. Derfor bruger vi en funktion til at kontrollere node typen for den foregående同级 node i de følgende eksempler.
Element nodes node type er 1, så hvis den foregående同级 node ikke er en element node, bevæger vi os til den foregående node og kontrollerer om denne node er en element node. Denne proces fortsætter indtil den foregående同级 node er fundet. Denne metode sikrer korrekte resultater i både Internet Explorer og Mozilla.
For mere information om forskelle mellem IE og Mozilla-browsere, besøg CodeW3C.coms XML DOM-tutorial under DOM-browser i dette afsnit.
eksempel
I alle eksempler vil vi bruge XML-filen books.xmlog JavaScript-funktionen loadXMLDoc()。
Følgende kodefragment henter XML-dokumentets første <author> elementets foregående同级 node:
//kontroller om den foregående bror node er en element node
function get_previoussibling(n)
{
var x=n.previousSibling;
while (x.nodeType!=1)
{
x=x.previousSibling
;
}
return x;
}
xmlDoc=loadXMLDoc("books.xml");
var x=xmlDoc.getElementsByTagName("author")[0];
document.write(x.nodeName);
document.write(" = ");
document.write(x.childNodes[0].nodeValue);
var y=get_previoussibling(x);
document.write("<br />Previous sibling: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);
Output af ovenstående kode:
author = Giada De Laurentiis Previous sibling: title = Everyday Italian