Document.createTreeWalker()
La méthode de création Document.createTreeWalker() renvoie un nouvel objet TreeWalker.
Syntaxe
js
treeWalker = document.createTreeWalker(root, whatToShow, filter, entityReferenceExpansion);
Paramètres
- root
- 
    est le Node(noeud) racine duTreeWalkerà traverser. Généralement, ce sera un élément appartenant au document.
- whatToShow Facultatif
- 
    est un unsigned long(long non signé) facultatif représentant un masque de bits créé par combinaison des propriétés de constante deNodeFilter. C'est un moyen pratique de filtrage pour certains types de nœuds. Par défaut0xFFFFFFFFreprésentant la constanteSHOW_ALL.Constante Valeur numérique Description NodeFilter.SHOW_ALL-1(c'est la valeur numérique maximale duunsigned long(non signé long))Affiche tous les noeuds. NodeFilter.SHOW_ATTRIBUTEObsolète2Affiche l'attribut Attrdes noeuds. Cela n'a de sens que lors de la création d'unTreeWalkeravec un noeudAttrcomme racine ; dans ce cas, cela signifie que le nœud d'attribut apparaîtra dans la première position de l'itération ou de la traversée. Comme les attributs ne sont jamais des enfants d'autres nœuds, ils n'apparaissent pas lors de la traversée de l'arbre du document.NodeFilter.SHOW_CDATA_SECTIONObsolète8Affiche les noeuds CDATASection.NodeFilter.SHOW_COMMENT128Affiche les noeuds Comment.NodeFilter.SHOW_DOCUMENT256Affiche les noeuds Document.NodeFilter.SHOW_DOCUMENT_FRAGMENT1024Affiche les noeuds DocumentFragment.NodeFilter.SHOW_DOCUMENT_TYPE512Affiche les noeuds DocumentType.NodeFilter.SHOW_ELEMENT1Affiche les noeuds Element.NodeFilter.SHOW_ENTITYObsolète32Affiche les noeuds Entity. Cela n'a de sens que lors de la création d'unTreeWalkeravec un noeudEntitycomme racine ; dans ce cas, il signifie que le noeud d'entitéEntityapparaîtra à la première position de la traversée. Étant donné que les entités ne font pas partie de l'arborescence du document, elles n'apparaissent pas lors de la traversée de l'arborescence du document.NodeFilter.SHOW_ENTITY_REFERENCEObsolète16Affiche les noeuds EntityReference.NodeFilter.SHOW_NOTATIONObsolète2048Affiche les noeuds Notation. Cela n'a de sens que lors de la création d'unTreeWalkeravec un noeudNotationcomme racine ; dans ce cas, il signifie que le noeudNotationapparaîtra à la première position de la traversée. Étant donné que les entités ne font pas partie de l'arborescence du document, elles n'apparaissent pas lors de la traversée de l'arborescence du document.NodeFilter.SHOW_PROCESSING_INSTRUCTION64Affiche les noeuds ProcessingInstruction.NodeFilter.SHOW_TEXT4Affiche les noeuds Text.
- filterFacultatif
- 
    est un NodeFilter(filtre de noeud) facultatif, c'est à dire un objet avec une méthodeacceptNodeappelé parTreeWalkerpour déterminer s'il doit accepter ou non un nœud qui a passé le testwhatToShow.
- entityReferenceExpansionFacultatif Obsolète
- 
    est un Boolean(en-US) (booléen) indiquant si, lors de la suppression d'uneEntityReference, son sous-arbre doit être supprimé en même temps.
Exemple
L'exemple suivant passe à travers tous les noeuds du "body" (corps du document), réduit l'ensemble des noeuds aux éléments, passe simplement à travers chaque noeud acceptable (à la place, il pourrait réduire l'ensemble dans la méthode acceptNode()), puis utilise l'itérateur de traversée de l'arbre créé pour avancer à travers les nœuds (maintenant tous les éléments) et les écrire dans un tableau.
js
var treeWalker = document.createTreeWalker(
  document.body,
  NodeFilter.SHOW_ELEMENT,
  { acceptNode: function(node) { return NodeFilter.FILTER_ACCEPT; } },
  false
);
var nodeList = [];
while(treeWalker.nextNode()) nodeList.push(treeWalker.currentNode);
Spécifications
| Specification | 
|---|
| DOM Standard # dom-document-createtreewalker | 
Compatibilité des navigateurs
BCD tables only load in the browser
Voir aussi
- L'interface de l'objet qu'il crée : TreeWalker.