NodeIterator

Tento článek potřebuje redakční kontrolu. Jak můžete pomoci.

Tento překlad není kompletní. Prosím pomozte přeložit tento článek z angličtiny.

Rozhraní NodeIterator představuje iterátor nad seznamem uzlů v podstromu DOM. Vrací uzly v pořadí dokumentu.
 
NodeIterator lze vytvořit metodou Document.createNodeIterator() následujícím způsobem:

 

var nodeIterator = document.createNodeIterator(root, whatToShow, filter);

Vlastnosti

Toto rozhraní nemá žádné zděněné vlastnosti.

NodeIterator.root Read only
Vrací Node přestavující kořenový uzel tak, jak byl specifikovaný při vytvoření NodeIteratoru.
NodeIterator.whatToShow Read only
Vrací unsigned long číslo, které  je bitovou maskou sestávající z konstat uvedených v tabulce níže. Tyto konstanty určují typy uzlů Node, které mají být v iteraci zahrnuty. Uzly, jejichž typy nejsou v masce obsaženy, budou při iteraci přeskočeny, ale jejich relevantní poduzly mohou být zahrnuty.
Konstanta Číselná hodnota Popis
NodeFilter.SHOW_ALL -1 (maximální hodnota pro unsigned long) Zahrnuje všechny typy uzlů.
NodeFilter.SHOW_ATTRIBUTE 2

Zahrnuje atributy (uzly typu Attr). Toto má smysl pouze tehdy, pokud se vytváří NodeIterator s uzlem typu Attr jako kořenovým uzlem. To vede k tomu, že se uzel atributu objeví na prvním místě iterace nebo procházení. Atributy se neobjevují při procházení stromu dokumentu, protože nejsou potomky jiných uzlů.

NodeFilter.SHOW_CDATA_SECTION 8 Zahrnuje uzly typu CDATASection.
NodeFilter.SHOW_COMMENT 128 Zahrnuje uzly typu Comment.
NodeFilter.SHOW_DOCUMENT 256 Zahrnuje uzly typu Document.
NodeFilter.SHOW_DOCUMENT_FRAGMENT 1024 Zahrnuje uzly typu DocumentFragment.
NodeFilter.SHOW_DOCUMENT_TYPE 512 Zahrnuje uzly typu DocumentType.
NodeFilter.SHOW_ELEMENT 1 Zahrnuje uzly typu Element.
NodeFilter.SHOW_ENTITY 32

Zahrnuje uzly typu Entity. To má smysl pouze tehdy, pokud se vytváří NodeIterator, který má Entity jako kořenový uzel. To vede k tomu, že se uzel Entity objevi na prvním místě při procházení. Entity nejsou součástí stromu dokumentu a proto se při procházení stromem neobjevují.

NodeFilter.SHOW_ENTITY_REFERENCE 16 Zahrnuje uzly typu EntityReference.
NodeFilter.SHOW_NOTATION 2048 Zahrnuje uzly typu Notation. To má smysl pouze tehdy, pokud se vytváří NodeIterator, který má Notation jako kořenový uzel. To vede k tomu, že se uzel Notation objevi na prvním místě při procházení. Notace nejsou součástí stromu dokumentu a proto se při procházení stromem neobjevují.
NodeFilter.SHOW_PROCESSING_INSTRUCTION 64 Zahrnuje uzly typu ProcessingInstruction.
NodeFilter.SHOW_TEXT 4 Zahrnuje uzly typu Text.
NodeIterator.filter Read only
Vrací NodeFilter použitý k výběru relevantních uzlů.
NodeIterator.expandEntityReferences Read only
Je to Boolean, jehož hodnota určuje, jestli se při zahození EntityReference zahodí i celý příslušný podstrom.
NodeIterator.referenceNode Read only
Vrací Node, ke kterému je iterátor ukotven.
NodeIterator.pointerBeforeReferenceNode Read only
Vrací Boolean určující, zda je NodeIterator ukotven před (true) nebo za (false) kotevním uzlem.

Metody

Toto rozhraní nemá žádné zděděné metody.

NodeIterator.detach()
Toto je prázdná operace, která nemá žádný efekt. V předchozí verzi se používala k označení iterátoru, který se dále nepoužívá, ale v současné verzi je zbytečná.
NodeIterator.previousNode()
Vrací předcházející Node v dokumentu nebo null v případě, že takový uzel neexistuje.
NodeIterator.nextNode()
Vrací následující Node v dokumentu nebo null v případě, že takový uzel neexistuje.

Specifikace

Specifikace Stav Komentář
DOM
The definition of 'NodeIterator' in that specification.
Living Standard Přidány vlastnosti  referenceNode a pointerBeforeReferenceNode.
Odstraněna vlastnost  expandEntityReferences.
Metoda detach() změněna na no-op.
Metody previousNode() a nextNode() už nezpůsobují výjimky.
Document Object Model (DOM) Level 2 Traversal and Range Specification
The definition of 'NodeIterator' in that specification.
Recommendation Počáteční definice.

Kompatibilita prohlížečů

Vlastnost Chrome Firefox (Gecko) Internet Explorer Opera Safari
Základní podpora 1.0 3.5 (1.9.1) 9.0 9.0 3.0
Vlastnost Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Základní podpora (Yes) 1.0 (1.9.1) (Yes) 9.0 3.0

Viz také

Štítky a přispěvatelé do dokumentace

Štítky: 
 Přispěvatelé této stránky: median1st
 Poslední aktualizace od: median1st,