为了账号安全,请及时绑定邮箱和手机立即绑定

前端记录用户正在按的按键的功能

前端记录用户正在按的按键的功能

冉冉说 2018-09-02 09:00:35
我有这样一个需求, 需要检测用户正在按下的按键,如果是某一个组合按键(比如command + shift + p), 我就执行某一个操作。但是遇到了问题, 就是复合按键的keyup事件没有触发,而仅仅触发了keydown。代码:const pressingKeyCode = {};const COMMAND = 91;const SHIFT = 16;const P = 80;window.addEventListener('keydown', e => {  console.log('keydown', e.keyCode);   pressingKeyCode[e.keyCode] = true;  if (     pressingKeyCode[COMMAND] &&     pressingKeyCode[SHIFT] &&     pressingKeyCode[P]   ) {    console.log('呵呵');   } });function handleKeyUp(e) {  console.log('keyup', e.keyCode);   pressingKeyCode[e.keyCode] = false; }window.addEventListener('keyup', handleKeyUp);单个按键是没有问题的可重现的demo地址: https://codepen.io/zhipenglu/...
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 536 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信