1

ナビゲーションバーにTwitter Bootstrapドロップダウンメニューがあり、クリックすると正しく開き、カーソルの上下キーが正しく機能します。

ただし、キーダウンまたはキーアップ イベント ハンドラで同じメニューを開くと $('#menu').dropdown('toggle');、メニューは正しく開閉しますが、カーソルの上下キーは機能しません。実際、ドロップダウン メニューkeydownイベントはトリガーされません。

html と Javascript は次のとおりです。

<ul class="nav">   <!-- "KB Menu"   -->
    <li class="dropdown kb_menu hideit">
      <a href="#" class="dropdown-toggle" data-toggle="dropdown">Knowledge Bases<b class="caret"></b></a>
      <ul class="dropdown-menu" role="menu" aria-labelledby="dLabel" id="kb_menu">
      </ul>
    </li>
</ul>


$(document).on('keydown', function( event ){
    if ( event.ctrlKey ){
        if ( event.keyCode == 191 ){   // Ctrl+/ = 191
            $('#kb_menu').dropdown('toggle');
        }
    }
});

私はこれまでのところ無駄に考えられるすべてを試しました。

4

1 に答える 1

1

次の行を後に追加します$('#kb_menu').dropdown('toggle')

$('#kb_menu').find('li:first > a').focus();
于 2013-02-07T11:09:32.580 に答える