XML DOM previousSibling ominaisuus
Määritelmä ja käyttö
previousSibling-ominaisuus palauttaa valitun solun edellisen samatasoisen solun (samassa puusta oleva edellinen solu).
Jos tällaista solua ei ole, tätä ominaisuutta palauttaa null.
Syntaksi:
elementNode.previousSibling
Vinkit ja huomautukset
Huomautus:Internet Explorer huomioi solujen välillä luodut tyhjät tekstisolut (esim. rivinvaihdot), mutta Mozilla ei. Siksi seuraavassa esimerkissä käytämme funktiota edellisen samatasoisen solun solutyypin tarkistamiseen.
Elementti-solun solutyypi on 1, joten jos edellinen samatasoinen solu ei ole elementti, siirry edelliseen soluun ja tarkista, onko se elementti. Tämä prosessi jatkuu, kunnes löydetään edellinen samatasoinen solu. Tämä menetelmä varmistaa, että Internet Explorerissä ja Mozillassa saadaan oikea tulos.
Lisätietoja IE ja Mozilla selaimien välisistä eroista löydät CodeW3C.com -sivuston XML DOM-opetusohjelmasta DOM-selain tämä luku.
esimerkki
Kaikissa esimerkeissä käytämme XML-tiedostoa books.xmlja JavaScript-funktio loadXMLDoc()。
Seuraava koodipätkä hakee XML-dokumentin ensimmäisen <author> -elementin edellisen samantasoisen solun:
//tarkista, onko edellinen sisar solu elementti
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 />Edellinen sisar: ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);
Yllä olevan koodin tulostus:
author = Giada De Laurentiis Edellinen sisar: title = Everyday Italian