Attribut previousSibling de XML DOM

Manuel de référence de l'objet Node

Définition et utilisation

L'attribut previousSibling peut renvoyer le noeud précédent immédiatement avant un noeud (au même niveau dans l'arbre)

Si ce noeud n'existe pas, cette propriété renvoie null.

Syntaxe :

nodeObject.previousSibling

Astuces et commentaires

Remarque :Internet Explorer ignore les noeuds de texte blanc générés entre les noeuds (par exemple, les symboles d'indentation), tandis que Mozilla ne le fait pas. Par conséquent, dans les exemples suivants, nous utiliserons une fonction pour vérifier le type de noeud du premier enfant.

Le type de noeud de l'élément est 1, donc si le premier enfant n'est pas un noeud élément, il passera au prochain noeud, puis continuera à vérifier si ce noeud est un noeud élément. Ce processus continuera jusqu'à ce que le premier noeud élément enfant soit trouvé. De cette manière, nous pouvons obtenir la méthode correcte dans Internet Explorer et Mozilla.

Astuces :Pour plus d'informations sur les différences entre XML DOM dans les navigateurs IE et Mozilla, veuillez visiter notre DOM Navigateur 章节。

实例

Dans tous les exemples, nous utiliserons le fichier XML books.xmlainsi que la fonction JavaScript loadXMLDoc()

Le code fragment suivant peut être obtenu à partir du noeud <author> du document XML :

//vérifier si le noeud frère précédent est un noeud élément
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 />Précédent noeud frère : ");
document.write(y.nodeName);
document.write(" = ");
document.write(y.childNodes[0].nodeValue);

Sortie :

auteur = Giada De Laurentiis
Précédent noeud frère : title = Everyday Italian

Manuel de référence de l'objet Node