0

純粋な JavaScript で「keydown」を行う方法がわかりません。

これがjQueryでの方法ですが、純粋なJSでも同じことを行う方法はありますか? 方法があるかどうかを確認し、その方法を学び、コードの違いと長さを確認したいだけです。ありがとうございました。

$('body').on('keydown', function(e) {
    if (e.keyCode === 27) return false;
});

編集:「Esc」ボタンを無効にするために使用されます!

4

4 に答える 4

3

リスナーを属性として設定するのは好きではないので、次のようにリスナーを追加します。

var ele = document.getElementById('test');
ele.addEventListener('keydown', function() {
    //code
}, false);
于 2013-03-12T13:13:55.397 に答える
1

どうぞ

document.body.onkeydown = function(e) {
    if (e.keyCode === 27) return false;
}

ご覧のとおり、jQueryは短いですが、実行されるコードは少なくなります

于 2013-03-12T13:11:12.233 に答える
0

これを試して、

HTML

<body onkeydown="YourFunction(event)">...</body>

JS

function YourFunction(e)
{
     var unicode=e.keyCode || e.charCode|| e.which;
     if(unicode == 27)
        return false;
     else
     {
        //Your code...
     } 
}
于 2013-03-12T13:15:22.267 に答える
0

純粋なJavaScriptでは、このように行われます

document.body.onkeydown=function(e){
  key=e.keyCode || e.charCode|| e.which; //cross browser complications
  if(key===27){
    return false;
  }
}

お役に立てば幸いです。これは、提供したJQueryと同じスクリプトです。

于 2013-03-12T13:18:12.040 に答える