<div tabindex="-1">
要素には、リスナーがfocusout
あります。フォーカス損失の内側と外側を区別しますか?
フォーカスはフォーカスがページ内の別の要素(または何もない要素)に変わるたびにイベントが発生します。
ただし、ブラウザのタブまたはウィンドウにフォーカスが失われても必ず発生します。これは、ALT+TAB
、WINDOWS
キー、別のアプリケーションをマウスでクリックしたユーザー、または開発者コンソールを開いているユーザーが原因で発生します。
FocusEvent
を処理する場合、ページ内またはページ外でのフォーカスの変更によって発生するイベントを区別する方法はありますか。
脇に、FocusEvent.relatedTarget
があります。しかし、フォーカスがページの外に出るときと、ページ内の別の部分(すなわち、フォーカスを「受け取る」ことができない要素)に行くときの両方で、null
と思われる。 UIEvent.sourceCapabilities
も利用可能であると思われ、ページ全体がフォーカスを失うと確実にnull
になるようですが、この問題を解決するにはどの程度信頼性が高いのかは分かりません。
ご協力いただければ幸いです。