Javascript Keydown失败

时间:2018-04-08 11:07:52

标签: javascript

这是我的代码

(function() {
   var mv1;
   var mv2;
   var same = same;
   var ID_EMPTY = 0;
   var ID_6 = 6;

  document.addEventListener('keydown', function (e) {
    if (e.keyCode == 71) { //G
        e.preventDefault();
        if (same) {
            storeEquip(ID_6);
            mv1 = setTimeout(function(){ h1(); }, 1);
        } else {
           clearTimeout(mv1);
           clearTimeout(mv2);
           storeEquip(ID_EMPTY);
        }
        same = !same;
     }
   });

   function h1() {
       storeEquip(ID_6);
       clearTimeout(mv1);
       mv2 = setTimeout(function(){ h2(); }, 1);
   }
   function h2() {
       storeEquip(ID_6);
       clearTimeout(mv2);
       mv1 = setTimeout(function(){ h1(); }, 1);
   }
})();

当按Enter键时我可以立即进入聊天,当我在聊天和按“G”时它不会在聊天中显示我G ... 这个代码用于通过按G来切换帽子它很好用于聊天我知道我可以将密钥更改为其他东西,但我想要它

1 个答案:

答案 0 :(得分:1)

危险的猜测,你正在通过按键来测试,但没有点击窗口上的光标,使用keyevent的javascript代码给窗口“焦点”。 如果窗口未聚焦,则不会发生事件!

https://developer.mozilla.org/en-US/docs/Web/Events/keydown