使用JS监听键盘按下事件(keydown event)
1、监听全局键盘按下事件,例如监听全局回车事件
$(document).keydown(function(event){
if(event.keyCode==13){
alert('你按下了Enter');
}
});
2、监听某个组件键盘按下事件,例如监听id为btn的button组件的回车按下事件
$("#btn").keydown(function(event){
if(event.keyCode==13){
alert('你按下了Enter');
}
});
3、如果是要监听组合键,例如监听ctrl+c
$(document).keyup(function(event){
if(event.ctrlKey&&event.keyCode==67){
alert('你按下了CTRL+C')
}
});
4、详细keyCode值列表
jskeyup、keypress和keydown事件详解
jskeyup、keypress和keydown事件都是有关于键盘的事件
当一个按键被pressed或released在每一个现代浏览器中,都可能有三种客户端事件。
keydownevent
keypressevent
keyupevent
keydown事件发生在键盘的键被按下的时候,接下来触发keypress事件。keyup事件在按键被释放的时候触发。
这三个事件在页面中的使用方法如下例:
对应的js函数:
functionkeyup(){...}
functionkeypress(){...}
functionkeydown(){...}
注意:
KeyDown触发后,不一定触发KeyUp,当KeyDown按下后,拖动鼠标,那么将不会触发KeyUp事件。
KeyPress主要用来捕获数字(注意:包括Shift+数字的符号)、字母(注意:包括大小写)、小键盘等除了F1-12、SHIFT、Alt、Ctrl、Insert、Home、PgUp、Delete、End、PgDn、ScrollLock、Pause、NumLock、{菜单键}、{开始键}和方向键外的ANSI字符
KeyDown和KeyUp通常可以捕获键盘除了PrScrn所有按键(这里不讨论特殊键盘的特殊键)
KeyPress只能捕获单个字符
KeyDown和KeyUp可以捕获组合键。
KeyPress可以捕获单个字符的大小写
KeyDown和KeyUp对于单个字符捕获的KeyValue都是一个值,也就是不能判断单个字符的大小写。
KeyPress不区分小键盘和主键盘的数字字符。
KeyDown和KeyUp区分小键盘和主键盘的数字字符。
其中PrScrn按键KeyPress、KeyDown和KeyUp都不能捕获。
在使用键盘的时候,通常会使用到CTRL+SHIFT+ALT类似的组合键功能。对于此,我们如何来判定?
通过KeyUp事件能够来处理(这里说明一下为什么不用KeyDown,因为在判定KeyDown的时候,CTRL、SHIFT和ALT属于一直按下状态,然后再加另外一个键是不能准确捕获组合键,所以使用KeyDown是不能准确判断出的,要通过KeyUp事件来判定)
这里简单的列举出CTRL+其它键的组合判定代码:
privatevoidForm3_KeyUp(objectsender,KeyEventArgse){
if(e.Control){
MessageBox.Show("KeyUp:Ctrl+"+e.KeyValue.ToString());
}
}
捕获PrScrn按键事件
通过一种钩子的方式可以判定PrScrn按键事件,钩子可以获取任何键盘事件。
以下是一些键盘上的键对应的Code:以下是一些键盘上的键对应的Code:
| 键盘按键 | 对应的数码 |
| backspace | 8 |
| tab | 9 |
| enter | 13 |
| shift | 16 |
| ctrl | 17 |
| alt | 18 |
| pause/break | 19 |
| capslock | 20 |
| escape | 27 |
| pageup | 33 |
| Space | 32 |
| pagedown | 34 |
| end | 35 |
| home | 36 |
| arrowleft | 37 |
| arrowup | 38 |
| arrowright | 39 |
| arrowdown | 40 |
| insert | 45 |
| delete | 46 |
| 0 | 48 |
| 1 | 49 |
| 2 | 50 |
| 3 | 51 |
| 4 | 52 |
| 5 | 53 |
| 6 | 54 |
| 7 | 55 |
| 8 | 56 |
| 9 | 57 |
| a | 65 |
| b | 66 |
| c | 67 |
| d | 68 |
| e | 69 |
| f | 70 |
| g | 71 |
| h | 72 |
| i | 73 |
| j | 74 |
| k | 75 |
| l | 76 |
| m | 77 |
| n | 78 |
| o | 79 |
| p | 80 |
| q | 81 |
| r | 82 |
| s | 83 |
| t | 84 |
| u | 85 |
| v | 86 |
| w | 87 |
| x | 88 |
| y | 89 |
| z | 90 |
| leftwindowkey | 91 |
| rightwindowkey | 92 |
| selectkey | 93 |
| numpad0 | 96 |
| numpad1 | 97 |
| numpad2 | 98 |
| numpad3 | 99 |
| numpad4 | 100 |
| numpad5 | 101 |
| numpad6 | 102 |
| numpad7 | 103 |
| numpad8 | 104 |
| numpad9 | 105 |
| multiply | 106 |
| add | 107 |
| subtract | 109 |
| decimalpoint | 110 |
| divide | 111 |
| f1 | 112 |
| f2 | 113 |
| f3 | 114 |
| f4 | 115 |
| f5 | 116 |
| f6 | 117 |
| f7 | 118 |
| f8 | 119 |
| f9 | 120 |
| f10 | 121 |
总结
以上所述是小编给大家介绍的使用JS监听键盘按下事件(keydownevent),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。