アクセシビリティ上の理由からキーボードナビゲーションに準拠しなければならない最初のアプリケーションを構築しています。ブラウザのフォームに焦点を当てるために、デフォルトのタブ動作をオーバーライドします。
私の問題は、jquery-uiモーダルダイアログボックスを使用することです。ユーザーがダイアログの最後のコントロール(このアプリケーションのキャンセルボタン)のタブを押すと、ダイアログボックスの外にフォーカスが移動します。または、ダイアログボックスの最初のコントロールのshift-tabを押します。
ユーザーがこれを行うと、必ずしもダイアログボックスに戻ることができない場合があります。 IE8とFF8はこの点でやや異なって動作します。私は、次のイベントハンドラでタブキーを捕獲しようとした -
lastButton.keydown(function (e) {
if (e.which === TAB_KEY_CODE) {
e.stopPropagation();
$(this).focus();
}
});
しかし、jqueryのが行われた後、ブラウザがキープレスを処理表示されますので、これは動作しません。
つの質問 - アクセシビリティの遵守のために
- 、私もこのことを心配する必要はありますか?しかし、使い勝手の理由から、私はそうすべきだと思います。
- これを行う方法はありますか?
e.preventDefualtについてお礼をお寄せいただきありがとうございます。それは作品の並べ替え。 IE8では、あなたの手品は機能しません。私はFF8で試してみると、通常のフォームでは動作しますが、モーダルダイアログボックスでは機能しません。 –