Vue|项目中监听键盘操作(组合键)

在开发中遇到一个需求,就是用键盘组合键触发事件。

代码如下,注意使用self操作业务,避免对this造成变量污染;

//模拟组合键触发函数
keyCodeForEvent(){
  let self = this;
  let code = 0;
  let code2 = 0;
  document.onkeydown = function(e){
    let evn = e || event ;
    let key = evn.keyCode || evn.which || evn.charCode ;
    if(key === 17){
      code = 1 ;
    }
    if(key === 13){
      code2 = 1;
    }
    if(code === 1 && code2 === 1){
      alert('Ctrl+Enter');
      // this obj to do something
      code = 0;
      code2 = 0;
    }
  }
  document.onkeyup = function(e){
    if (e.keyCode === 17) {
      code = 0;
    }
    if (e.keyCode === 13) {
      code2 = 0;
    }
  }
}
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容