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