html
<ul> <li><a href="a.html" tabindex="0">a</a></li> <li><a href="b.html" tabindex="1">b</a></li> <li><a href="c.html" tabindex="2">c</a></li> </ul>
上記のhtmlでtabキーを押すとちゃんと順番に0,1,2と移動して該当箇所でEnterを押すと指定のhtmlへ遷移します。
ここまでは期待通りの動きなのですが、
jqueryにてtabindex=1のときに、特定の処理をしたいのですが、なぜかtabindexの値が一個前にfocusしたindexが取れてしまいます。
$(window).keydown(function(e){ if(e.keyCode == 9) { var focused = $(':focus').attr("tabindex"); console.log("focused",focused);//ここがliの二番目にいるのにtabindex="0"と出力される・・・liの3番目にいるときにshift+tabで二番目に戻った際はtabindex="2"と表示されます。 if(focused == 1) { console.log("やりたい処理"); } } });
tabキーで移動した先のtabindex番号をすぐに取得するにはどう修正すればよいでしょうか?
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/01 02:46