Je me demande si je sais quelle est la différence entre javascript previoussibling et previouselementsibling. J'ai essayé et je n'ai trouvé aucune question ou article qui compare ou décrit cela. C'est peut-être pour ma petite connaissance de javascript, mais j'apprécie si je l'explique.
Merci beaucoup.
La propriété previousElementSibling
renvoie l'élément précédent de l'élément spécifié, au même niveau d'arborescence.
La différence entre cette propriété et previousSibling
est que previousSibling
renvoie le nœud frère précédent en tant que nœud d'élément, nœud de texte ou nœud de commentaire, tandis que previousElementSibling
renvoie le frère précédent nœud en tant que nœud d'élément (ignore les nœuds de texte et de commentaire).
//Get the second li element
var liElement = document.getElementById( "target" ) ;
//Get the previous element (→ Text node (line feed and tab character))
var previousSibling = liElement.previousSibling ;
console.log("previousElementSibling::"+previousSibling.data);
console.log("previousElementSibling.previousElementSibling::",previousSibling.previousElementSibling);
//Get the previous element (→ <li> Element 3 </ li>)
var previousElementSibling = liElement.previousElementSibling ;
console.log("previousElementSibling::",previousElementSibling);
<ul>
<li>Element-1</li>↓
<li id="target">Element-2</li>
<li>Element-3</li>
</ul>