blockly > IFocusableNode > getFocusableElement
IFocusableNode.getFocusableElement() メソッド
フォーカスを受け取るように明示的にリクエストできる DOM 要素を返します。
重要: この要素は、明示的にフォーカスされ、現在のフォーカス状態(ぼかし、アクティブなフォーカス、パッシブなフォーカス)に応じてスタイルが変更されるため、ページ上に視覚的に表示されることが想定されています。要素には、次の 2 つのスタイルのいずれかが適用されます(スタイルがない場合は、ぼかし/フォーカスなしを示します)。- blocklyActiveFocus - blocklyPassiveFocus
返される要素には有効な ID が指定されている必要があり、この ID はページ全体で一意である必要があります。一意の ID が適切に設定されていないと、1 つのノードにフォーカスしようとした(マウスのクリックなど)結果、同じ ID を持つ別のノードが FocusManager によってフォーカスされる可能性があります。
返された要素は、FocusManager.focusNode() または FocusManager.focusTree() を介してノードがフォーカスされた場合に表示される必要があります。onNodeFocus() が呼び出されるまで要素を非表示にしたり、onNodeBlur() の呼び出しで非表示にしたりすることは許可されています。
返される実際の要素は、ノードの存続期間中は変更されないことが想定されています(つまり、プロパティは変更できますが、新しい要素が返されることはありません)。また、返された要素の tabindex は、このノードと FocusManager のライフサイクル全体で上書きされます。
FocusManager を介して最初にフォーカスされることなく、直接フォーカスされる機能をノードで必要とする場合は、独自のタブ インデックスを設定する必要があります。
署名:
getFocusableElement(): HTMLElement | SVGElement;
戻り値:
HTMLElement | SVGElement
このノードでフォーカスを受け取ることができ、アクティブまたはパッシブにフォーカスされていることを視覚的に表現できる HTMLElement または SVGElement。