1

onkeyupイベントを使用して、修飾キー、特に Alt キーがいつ離されたかを確実に検出できないようです。うまくいくこともあれば、うまくいかないこともあります。ただし、ほとんどの場合はそうではありません。

私の現在のコードは次のとおりです。

document.documentElement.onkeyup = function(e) {
    e = e || window.event;
    if( !e.altKey) {
        // do stuff here
        document.documentElement.onkeyup = null;
    }
}

デフォルトのイベント アクションの防止が機能しないことに関連している可能性があります...? 私は IE9 で作業していて、[ファイル] メニューが表示されます。ただし、イベントをトリガーする前にメニューを閉じます。

4

2 に答える 2

2

あなたの質問に対する直接の答えではありませんが、これはあなたを助けるかもしれません。これは、ブラウザがキーダウン/プレス/アップを管理する方法に関する非常に詳細な説明です。

于 2011-10-29T20:31:16.087 に答える
0

通常、ブラウザの主要なイベントは、ページで定義されたイベントよりも優先されると思います。ただし、私はIE9でテストしたばかりであり、jQueryはその問題を克服したように見えるため、jQueryを使用することをお勧めします。

編集:これはイベントをキャプチャしているように見えますが、IEが独自のイベントを実行するのを防ぐことはできないと思います。

于 2011-10-29T20:28:17.330 に答える