Maison  >  Article  >  interface Web  >  Comment parcourir des éléments en js

Comment parcourir des éléments en js

php中世界最好的语言
php中世界最好的语言original
2018-06-07 11:12:002739parcourir

Cette fois, je vais vous montrer comment effectuer le parcours d'éléments en js, et quelles sont les précautions à prendre pour le parcours d'éléments en js. Ce qui suit est un cas pratique, jetons un coup d'œil.

Les navigateurs qui prennent en charge la spécification Element Traversal incluent IE 9+, Firefox 3.5+, Safari 4+, Chrome et Opera 10+.

Pour les espaces entre les éléments, les nœuds de document ne seront pas renvoyés avant IE9, et tous les autres navigateurs renverront les nœuds de document.

Afin d'être compatible avec les différences entre les navigateurs sans modifier le standard DOM existant, la spécification Element Traversal a été créée.

Cette spécification ajoute 5 attributs aux éléments

childElementCount
firstElementChild
lastElementChild
previousElementSibling
nextElementSibling

Documentation officielle détaillée ; www.w3.org/TR/ElementTraversal/

Pour les espaces entre les éléments, les versions antérieures à IE9 ne renverront pas de nœuds de texte, tandis que les autres navigateurs renverront des espaces sous forme de nœuds de texte. Cela conduit à un comportement incohérent lors de l’utilisation des propriétés childNodes et firstChild. Afin de compenser cette différence tout en gardant la spécification DOM inchangée, la spécification W3C Element Traversal définit un nouvel ensemble de propriétés.

L'API Element Traversal ajoute les 5 attributs suivants aux éléments DOM :

  • childElementCount : renvoie le nombre d'éléments enfants (à l'exclusion des nœuds de texte et des commentaires).

  • firstElementChild : pointe vers le premier élément enfant.

  • lastElementChild : pointe vers le dernier élément enfant.

  • previousElementSibling : pointe vers l'élément frère précédent.

  • nextElementSibling : pointe vers l'élément frère suivant.

Les navigateurs pris en charge ont ajouté ces attributs aux éléments DOM. En utilisant ces éléments, vous n'avez pas à vous soucier des nœuds de texte vides, ce qui rend la recherche d'éléments DOM très pratique.

Voici un exemple. Dans le passé, lorsque vous vouliez parcourir tous les éléments enfants d'un élément à travers les navigateurs, vous deviez écrire du code comme celui-ci :

var i,len,child = element.firstChild;
while(child != element.lastChild){
 if(child.nodeType == 1){
  processChild(child);
 }
 child = child.nextSibling;
}

Avec les nouveaux attributs d'Element Traversal, le code deviendra très concis :

var i,len,child = element.firstElementChild;
while(child != element.lastElementChild){
 processChild(child);
 child = child.nextElementSibling;
}

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture recommandée :

Comment utiliser Vue pour créer un proxy

Comment gérer le scintillement lorsque v-cloak est chargé dans vue

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn