1

jQueryを使用してドキュメントのキー押下を管理し、新しいウィンドウを開きます。

$(document).keypress(function(event){
    var keycode = (event.keyCode ? event.keyCode : event.which);
    if(keycode == '13') {
        // Open a new window
    }
});

問題は、ユーザーが明示的にクリックするまで閉じたままにしておきたいjQueryアコーディオンがあることです。「Enter」キーを押してもアコーディオンが開かないようにできましたが、新しいタブで別のウィンドウが開いてアクティブになると、アコーディオンが開きます。

問題は、アコーディオンを開くことができるアコーディオンに何が発射されているのかさえわからないことです。

要素のすべてのイベントを削除してから、必要なイベントを追加する方法はありますか(私の場合はマウスを下に移動するかクリックします)?または、その要素によって処理されているイベントを報告して、その要素のバインドを解除することを試みることができますか?

4

2 に答える 2

2

の「アクティブな」部分を読んでみましたか

http://api.jqueryui.com/accordion/#option-active

つまり、activeをfalseに設定すると、すべてのパネルが折りたたまれます

于 2013-01-29T22:38:55.377 に答える
2

このスクリプトレットは、どのイベントがどのdom要素に関連付けられているかを調べるときに非常に役立つことがわかりました。私はあなたが何が起こっているのかを理解するのを手伝うかもしれません-ビジュアルイベント

于 2013-01-29T22:40:29.503 に答える