热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

vue键盘事件监听

1、在当前页截获键盘事件,所有按钮均被控制created(){this.keyDown();},beforeDestroy(){this.keyDownReview()},meth

1、在当前页截获键盘事件,所有按钮均被控制

created () {
this.keyDown();
},
beforeDestroy () {
this.keyDownReview()
},
methods: {
//按键恢复
keyDownReview () {
document.Onkeydown= function (event) {
var e = event || window.event;
e.returnValue
= true;
}
},
//按钮监听键盘
keyDown () {
//监听键盘按钮
document.Onkeydown= function (event) {
var e = event || window.event;
var keyCode = e.keyCode || e.which;
switch (keyCode) {
case 112://F1
alert('F1')
break;
case 113://F2
alert('F2')
break;
case 117://F6
alert('F6')
break;
case 119://F8
alert('F8')
break;
case 13://enter
alert('enter')
break;
default:
break;
}
if (e && e.preventDefault) {
e.preventDefault();
}
else {
window.event.returnValue
= false;
}
}
},
}

2、单一按钮通过单一键盘键控制,其他不受影响

<el-button type="primary" @click="refresh">刷新(F1)el-button>

created () {
this.keyDown()
},
beforeDestroy () {
this.keyDownReview()
},
methods: {
//按键恢复
keyDownReview () {
document.Onkeydown= function (event) {
var e = event || window.event;
e.returnValue
= true;
}
},
//键盘按钮截获
keyDown () {
document.onkeydown
= e => {
//112表示F1键
if (e.keyCode === 112) {
//F1键后执行刷新方法
this.refresh()
//取消原来的后续事件
e.preventDefault()
}
}
},
refresh () {
alert(
'refresh')
},
}

 

3、详细keyCode值列表

 

 

 

 

 



推荐阅读
author-avatar
微软Kindle批发
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有