NodeFilter.acceptNode()
La méthode NodeFilter.acceptNode()
renvoie un unsigned short
(non signé court) qui sera utilisé pour dire si un Node
donné peut être accepté ou non par l'algorithme d'itération NodeIterator
ou TreeWalker
. Cette méthode doit être écrite par l'utilisateur du NodeFilter
. Les valeurs retournées possibles sont :
Constante | Description |
NodeFilter.FILTER_ACCEPT |
Valeur renvoyée par la méthode NodeFilter.acceptNode() quand un noeud doit être accepté . |
NodeFilter.FILTER_REJECT |
Valeur à retourner par la méthode NodeFilter.acceptNode() quand le noeud doit être rejeté. Les enfants des noeuds rejetés ne sont pas visités par les objets NodeIterator ou TreeWalker ; cette valeur est traitée comme "ignorer ce noeud et tous ses enfants". |
NodeFilter.FILTER_SKIP |
Valeur à retourner par NodeFilter.acceptNode() pour que les noeuds soient ignorés par les objets NodeIterator ou TreeWalker . Les enfants des noeuds ignorés sont toujours considérés. Cela équivaut à "ignorer ce noeud mais pas ses enfants". |
La fonction doit renvoyer NodeFilter.FILTER_ACCEPT
qui pousse le TreeWalker à renvoyer le noeud, NodeFilter.FILTER_REJECT
qui contraint le TreeWalker à ignorer le sous-arbre entier ou NodeFilter.FILTER_SKIP
.
Le navigateur ne fournit aucun objet implémentant cette méthode. C'est l'utilisateur qui doit écrire un objet implémentant l'interface NodeFilter
, adapter la méthode acceptNode()
à ses besoins et l'utiliser avec un objet TreeWalker
ou NodeIterator
.
Syntaxe
result=
nodeFilter.acceptNode(
node)
Paramètres
- node
- est un
Node
(noeud) qui doit être vérifié avec le filtre.
Exemple
var nodeIterator = document.createNodeIterator(
// Noeud à utiliser comme racine
document.getElementById('someId'),
// Considérer uniquement les nœuds qui sont des nœuds de texte (nodeType 3)
NodeFilter.SHOW_TEXT,
// Objet contenant la fonction à utiliser pour la méthode acceptNode du NodeFilter
{ acceptNode: function(node) {
// Logique pour déterminer si accepter, rejeter ou ignorer le noeud
// dans ce cas, n'accepte que les noeuds ayant du contenu
// autres que les espaces
if ( ! /^\s*$/.test(node.data) ) {
return NodeFilter.FILTER_ACCEPT;
}
}
},
false
);
// Affiche le contenu de tous les noeuds texte non vides qui sont enfants de la racine
var node;
while ((node = iterator.nextNode())) {
alert(node.data);
}
Spécifications
Spécification | Statut | Commentaire |
---|---|---|
DOM La définition de 'NodeFilter.acceptNode()' dans cette spécification. |
Standard évolutif | Pas de changement depuis Document Object Model (DOM) Level 2 Traversal and Range Specification |
Document Object Model (DOM) Level 2 Traversal and Range Specification La définition de 'NodeFilter.acceptNode()' dans cette spécification. |
Obsolete | Définition initiale. |
Compatibilité des navigateurs
BCD tables only load in the browser
Voir aussi
- L'interface à laquelle elle appartient :
NodeFilter
.