js 监听组合键盘事件

有些时候,我们需要在网页上,增加一些快捷按键,方便用户使用一些常用的操作,比如:保存,撤销,复制、粘贴等等。

我们所熟悉的按键有这么集中类型:

  • 单独的按键操作,如:delete、up、down等
  • 两位组合建,如:ctrl(cmd)+ 其他按键,alt+其他按键,shift+其他按键
  • 三位组合键,如:ctrl(cmd)+ shift + 其他按键,Ctrl(cmd)+ alt + 其他按键

在 事件 触发时 event 中有这几个属性 ctrlKey(metaKey)、altKey、shiftKey, 在按下相应的 ctr 、alt 、shift 时,对应的 属性就会为true ,

然后加上 其他键对应的 keyCode ,就可以判断了

例如 shift + Enter 

doc.addEventListener('keydown',function(e){
    if(e.keyCode === 13 &&  e.shiftKey === true){
        e.preventDefault(); //阻止默认行为,会有兼容问题
        // 其他代码
    }
});
原文地址:https://www.cnblogs.com/bruce-gou/p/9884641.html