jQuery UI Tabsにはこの「機能」があり、上下左右のキー矢印を押すとタブが切り替わり、そのタブが読み込まれます。
一般に、水平タブの場合、ユーザーは、タブを移動するよりも、上下のキーでページをスクロールすることに慣れています。上下キーのみのタブ ナビゲーションを無効にすることはできますか?
アップデート
Konstantin の提案に基づいて、次のコードを試しました。アンカータブをクリックした直後に、上または下のキーをクリックすると、イベントがブロックされます。左/右キーのように別のキーを押してから、上/下キーをもう一度押します。イベントを登録しますが、伝播を停止していないようです。イベントが別の要素から発火している可能性はありますか? これが私のコードです:
$('#tabs').keydown(function (event) {
console.log("in tabs");
if (event.keyCode == 40 || event.keyCode == 38) {
event.stopPropagation();
event.preventDefault();
return false;
};
});
$('.ui-tabs-anchor').keydown(function (event) {
console.log("in ui tabs anchor");
if (event.keyCode == 40 || event.keyCode == 38) {
event.stopPropagation();
event.preventDefault();
return false;
};
});
$('.ui-tabs-nav').keydown(function (event) {
console.log("in ui tabs nav");
if (event.keyCode == 40 || event.keyCode == 38) {
event.stopPropagation();
event.preventDefault();
return false;
};
});