TreeWalker
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since Juli 2015.
Das TreeWalker-Objekt repräsentiert die Knoten eines Dokument-Unterbaums und eine Position innerhalb dieser.
Ein TreeWalker kann mit der Methode Document.createTreeWalker() erstellt werden.
Instanz-Eigenschaften
Diese Schnittstelle erbt keine Eigenschaften.
TreeWalker.rootSchreibgeschützt-
Gibt den Wurzel-
Nodezurück, wie beim Erstellen desTreeWalkerspezifiziert. TreeWalker.whatToShowSchreibgeschützt-
Gibt ein
unsigned longzurück, welches eine Bitmaske aus Konstanten ist, die die Typen vonNodebeschreiben, die angezeigt werden müssen. Nicht übereinstimmende Knoten werden übersprungen, aber ihre Kinder können einbezogen werden, falls relevant. TreeWalker.filterSchreibgeschützt-
Gibt den
NodeFilterzurück, der mit diesemTreeWalkerverbunden ist und verwendet wird, um die relevanten Knoten auszuwählen. TreeWalker.currentNode-
Ist der Knoten, auf den der
TreeWalkeraktuell zeigt.
Instanz-Methoden
Diese Schnittstelle erbt keine Methoden.
Hinweis:
Im Kontext eines TreeWalker ist ein Knoten sichtbar, wenn er in der logischen Ansicht existiert, die durch die Argumente whatToShow und filter bestimmt wird. (Ob der Knoten auf dem Bildschirm sichtbar ist, ist irrelevant.)
TreeWalker.parentNode()-
Bewegt den aktuellen
Nodezum ersten sichtbaren Vorfahrenknoten in der Dokumentreihenfolge und gibt den gefundenen Knoten zurück. Es bewegt auch den aktuellen Knoten zu diesem Knoten. Wenn ein solcher Knoten nicht existiert oder er vor dem Wurzelknoten liegt, der bei der Objekterstellung definiert wurde, wirdnullzurückgegeben und der aktuelle Knoten wird nicht geändert. TreeWalker.firstChild()-
Bewegt den aktuellen
Nodezum ersten sichtbaren Kind des aktuellen Knotens und gibt das gefundene Kind zurück. Es bewegt auch den aktuellen Knoten zu diesem Kind. Wenn ein solches Kind nicht existiert, wirdnullzurückgegeben und der aktuelle Knoten wird nicht geändert. Beachten Sie, dass der vonfirstChild()zurückgegebene Knoten vom Wert vonwhatToShowabhängt, der während der Instanziierung desTreeWalker-Objekts festgelegt wurde. Bei Annahme des folgenden HTML-Baums und wenn SiewhatToShowaufNodeFilter.SHOW_ALLsetzen, wird ein Aufruf vonfirstChild()einenText-Knoten und nicht einHTMLDivElement-Objekt zurückgeben.html<!doctype html> <html lang="en"> <head> <title>Demo</title> </head> <body> <div id="container"></div> </body> </html>jslet walker = document.createTreeWalker(document.body, NodeFilter.SHOW_ALL); let node = walker.firstChild(); // nodeName: "#text"Aber wenn wir:
jslet walker = document.createTreeWalker( document.body, NodeFilter.SHOW_ELEMENT, ); let node = walker.firstChild(); // nodeName: "DIV"Das Gleiche gilt für
nextSibling(),previousSibling(),firstChild()undlastChild(). TreeWalker.lastChild()-
Bewegt den aktuellen
Nodezum letzten sichtbaren Kind des aktuellen Knotens und gibt das gefundene Kind zurück. Es bewegt auch den aktuellen Knoten zu diesem Kind. Wenn ein solches Kind nicht existiert, wirdnullzurückgegeben und der aktuelle Knoten wird nicht geändert. TreeWalker.previousSibling()-
Bewegt den aktuellen
Nodezu seinem vorhergehenden Geschwister, falls vorhanden, und gibt das gefundene Geschwister zurück. Wenn es keinen solchen Knoten gibt, wirdnullzurückgegeben und der aktuelle Knoten wird nicht geändert. TreeWalker.nextSibling()-
Bewegt den aktuellen
Nodezu seinem nächsten Geschwister, falls vorhanden, und gibt das gefundene Geschwister zurück. Wenn es keinen solchen Knoten gibt, wirdnullzurückgegeben und der aktuelle Knoten wird nicht geändert. TreeWalker.previousNode()-
Bewegt den aktuellen
Nodezum vorhergehenden sichtbaren Knoten in der Dokumentreihenfolge und gibt den gefundenen Knoten zurück. Es bewegt auch den aktuellen Knoten zu diesem. Wenn ein solcher Knoten nicht existiert oder er vor dem Wurzelknoten liegt, der bei der Objekterstellung definiert wurde, wirdnullzurückgegeben und der aktuelle Knoten wird nicht geändert. TreeWalker.nextNode()-
Bewegt den aktuellen
Nodezum nächsten sichtbaren Knoten in der Dokumentreihenfolge und gibt den gefundenen Knoten zurück. Es bewegt auch den aktuellen Knoten zu diesem. Wenn ein solcher Knoten nicht existiert, wirdnullzurückgegeben und der aktuelle Knoten wird nicht geändert.
Spezifikationen
| Specification |
|---|
| DOM> # interface-treewalker> |
Browser-Kompatibilität
Loading…
Siehe auch
- Die Erstellermethode:
Document.createTreeWalker(). - Verwandte Schnittstelle:
NodeIterator.