blockly > FocusableTreeTraverser

FocusableTreeTraverser 類別

IFocusableTree 實作的輔助公用程式,可協助進行常見的樹狀結構遍歷。

Signature:

export declare class FocusableTreeTraverser 

方法

方法 修飾符 說明
findFocusableNodeFor(element, tree) static

如果指定的 HTML 或 SVG 元素是根元素,或是指定 IFocusableTree 的根元素後代,則傳回對應的 IFocusableNode。

如果元素存在於指定樹狀結構的 DOM 結構中,但並未直接對應至節點,系統會傳回最接近的父項節點 (或樹狀結構的根),代表提供的元素。

如果樹狀結構包含另一個巢狀 IFocusableTree,系統可能會遍歷巢狀樹狀結構,但根據 IFocusableTree.lookUpFocusableNode 的合約,系統絕不會在此傳回巢狀樹狀結構的節點。

提供的元素必須具有非空值、非空白的 ID,且符合 IFocusableNode 中提及的合約。

findFocusedNode(tree) static

傳回目前樣式 (因此代表) 具有被動或主動焦點的 IFocusableNode,僅考量 HTML 和 SVG 元素。

這可以比對樹狀結構的根。

請注意,這絕不會從巢狀子樹狀結構傳回節點,因為該樹狀結構應專門用於擷取其焦點節點。