「Tab」キーによってリンクやフォームへのFocusを
順番に移動させることが出来ます。
しかし「Tab」の利用は下記のような問題があります。
Focus開始時にスクロール位置がずれる
通常 TabによるFocusはページ先頭のオブジェクトから始まります。
ページロード後に下方へスクロールした後 Tabキーを押すと
Focus開始位置が先頭リンクになるため
前方にスクロール位置が戻る場合があります。
「KeyNavi」では Focus開始位置は表示エリア内のリンクを優先
FlashがあるとFocusの移動が止められる
FlashオブジェクトにFocusするとその後 Tabを押しても次へ進みません。
また矢印キーなどの入力まで無視されます。
例えばIE6.0ではFlashオブジェクトの周りが黄色の線で縁取りされたまま
先に進みません。Shift-Tabを入力しても戻れません。キー入力をトラップされます。
解除するにはFlash以外の場所をクリックします。
KeyNaviのフォーカス機能ではFlashにフォーカスしないようにしています。
Focusの移動順が予想外
Tabによる移動は必ずしも「上→下」或いは「左→右」となるとは限りません。
HTMLソース内でのリンクの順番に従います。
商用サイトなどで左右にメニュー列がある場合や
イメージマップがある場合は予想外の順番でFocusしていきます。
Tabを何度も押す必要がある
Tab入力ではフォーカス位置を直接上下左右に移動できません。
移動先のオブジェクトが直下にあったとしても
HTMLソースでの記述では 途中に他のオブジェクトがある場合、
それらを経由する必要があります。
その結果「Tab」の入力回数は増えます。
試す:フォーム入力編(<KeyNaviサンプル)