2016-06-18 2 views
0

私はモーダルプラグインを構築しており、アドレスバーにフォーカスを設定できるようにしたいと考えています。アドレスバーにプログラム的にフォーカスを当てていますか?

モーダルウィンドウ内のオブジェクトにタブ移動を制限する必要があるため、キーボードユーザーとアクセシビリティユーザーがモーダルウィンドウからアドレスにタブを移動できるようにする必要があるので、これを可能にしたいと思います彼らが最後の要素に達したときに(モーダルの内側に詰まっていないように)私はモーダル以外のtabbable要素すべてにtabindex -1を設定することでこれを行うことができることを知っていますが、可能ならばその解決法を避けたいと思います。

セキュリティ上の制約のため、アドレスバーに直接フォーカスを設定できない場合があります。ただし、これを行う方法、または次の要素がアドレスバーになるようにページの焦点をずらす方法はありますか?

+2

なぜCtrl-L/Cmd-Lを使用できないのですか? – jonrsharpe

+0

[Ctrl] + [L] – jdphenix

+0

についてあなたのユーザーに教えることでもっと成功するかもしれません。http://stackoverflow.com/questions/3266053/setting-focus-to-the-address-bar-using-a-firefox-extensionおそらく – mplungjan

答えて

0

モーダル要素を持つと、他の要素がビジュアルバッファから削除されません。スクリーンリーダーはあなたのモーダルの後に他の要素を自動的に読み込むかもしれません。したがって、発表されるかもしれない要素のtabindexを削除することは、実際には解決策ではありません。

$(".outside_modal").onfocus() {$("#modal-first-link").focus()}のようなコードを使用して他の要素からフォーカスを削除することはできますが、リンクターゲットを表示する視覚的なフォーカスとキーボードのフォーカスが提供するアクションとの間に不整合があります。

実行可能な唯一の解決策は、DOMの最後の位置にモーダル要素を設定することです。

関連する問題