2

タブキーを介してナビゲーションを有効にする単純なデータグリッドがあります。(次のセルに移動します) IE 7 および 8 では、Tab キーを押すと、フォーカスがグリッドから次の要素に移動します。

他のブラウザーでは、グリッドを含む div で focus() を呼び出すことにより、フォーカスがページの次の要素に移動するのを防ぎます。IE ではこれは機能しません。フォーカスは関係なく移動します。

タブキーを繰り返し押してグリッド内のセル間を移動できるように、グリッドにフォーカスを維持するには (jQuery を使用せずに) どうすればよいでしょうか?

Enter キーを押しても同じ問題が発生します。

4

2 に答える 2

2

タブキーの処理が終了したら、イベントハンドラー (onkeydown、keypress など) で次のコードを使用します:)

return false;

これにより、デフォルトの動作が発生しなくなり、ナビゲーションが進行しなくなります。

于 2012-07-03T06:43:08.883 に答える
0

別の方法は、要素にアクセスしたい順序で要素のtabindex属性を使用することです。スクリプトは必要ありません。

ただし、古いブラウザはHTML5バージョンをサポートしていない可能性がありますが、それらのブラウザも同じ要素へのフォーカスをサポートしていない可能性があります。

于 2012-07-03T13:56:45.413 に答える