javascript 使用JS / jQuery的按键组合(Escape和Shift +Escape)

dzjeubhm  于 2022-12-10  发布在  Java
关注(0)|答案(1)|浏览(173)

在js/jQuery中,有没有一种方法可以实现这两种按键组合?
ESCape密钥

SHIFT + Escape键
当我使用以下代码实现它时:

document.onkeydown = function(e){if (e == null) {keycode = event.keyCode;}
else         {keycode = e.which;}
if(keycode == 27){closeAll();}}

//upon pressing shift + esc
$(document).bind('keypress',function(event)
{
      if(event.which === 27 && event.shiftKey)
    {
  closetogether();
   }

});

退出键工作得很好,但一个与shift + esc是越来越混乱,我想是因为它什么都不做.别担心,功能的工作,当我改变组合键27到90(z),例如,它的工作就很好.
有人能选择我更好的方式吗?

mrfwxfqh

mrfwxfqh1#

为什么不使用jQuery绑定keydown事件呢?这样就有了一个规范化的事件变量。还可以在同一个处理程序中检查shift键的状态。
这些事件会传回不同的按钮码。使用keyup/keydown来撷取扫描码的特定按钮,使用keypress来撷取字符的实际文字输入。

$(document).bind('keydown', function(event) {
    if(event.which === 27){
        if(event.shiftKey){
            closetogether();
        } else {
            closeAll();
        }
    }
});

相关问题