您的位置:首页 > Web前端 > JavaScript

javascript捕获键盘组合事件

2016-01-19 00:55 525 查看
jsp页面需要捕获用户的键盘快捷键组合操作,网上找了不少代码,使用event.altKey && event.keyCode == 73判断,但在chrom和firefox下都不能正常起作用,debug调试时keyCode总是18。不知道是不是我使用的浏览器版本比较新。

发现下面个js组件,经测试能用,主要是代码特别少。jquery.shortcuts.min.js文件只有692个字节,1K都不到。我的浏览器版本
Firefox/43.0
.4,chrome/43.0.2357.81都能没问题。
https://github.com/ambethia/jquery-shortcuts
示例代码特别简单

$(document).shortcuts({
"Q": {
keys: [81],
desc: "Log Q to the console",
func: function() { console.log("You pressed Q") }
},
"ALT I": {
keys: [18, 73],
desc: "Log this key combination to the console",
func: function() { console.log("You pressed ALT and I") }
}
});
下面有介绍其他的JavaScript 键盘事件处理库:
http://www.cnblogs.com/lhb25/p/20-javascript-libraries-to-handle.html
最后附上,键盘中所有按钮的keycode一览 

字母和数字键的键码值(keyCode)
按键键码按键键码按键键码按键键码
A65J74S83149
B66K75T84250
C67L76U85351
D68M77V86452
E69N78W87553
F70O79X88654
G71P80Y89755
H72Q81Z90856
I73R82048957
数字键盘上的键的键码值(keyCode)功能键键码值(keyCode)
按键键码按键键码按键键码按键键码
0968104F1112F7118
1979105F2113F8119
298*106F3114F9120
399+107F4115F10121
4100Enter108F5116F11122
5101-109F6117F12123
6102.110    
7103/111    
控制键键码值(keyCode)
按键键码按键键码按键键码按键键码
BackSpace8Esc27Right Arrow39-_189
Tab9Spacebar32Down Arrow40.>190
Clear12Page Up33Insert45/?191
Enter13Page Down34Delete46`~192
Shift16End35Num Lock144[{219
Control17Home36;:186\|220
Alt18Left Arrow37=+187]}221
Cape Lock20Up Arrow38,<188'"222
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息