在开发中遇到一个需求,就是用键盘组合键触发事件。
代码如下,注意使用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;
}
}
}
网友评论