JS中的键盘事件(onkeydown、onkeyup、keyCode)
键盘事件:okeydown:键盘被按下,如果一直按着键盘的按键,则okeydown事件会一直被触发。- 当键盘按键一直被按住的时候,事件被连续触发,第一次和第二次以及后面的n次之间,触发的时间间隔会稍长,在0.5秒左右(一直按着按键,事件连续触发,第一次触发之后会有0.5秒左右的延迟,后面的连续触发事件不会有延迟,延迟只在第一次和第二次之间)。这种设计是为了防止误操作。在页面中需要判断按键是否被按
文章共872字 · 阅读需要大约3分钟
一键AI生成摘要,助你高效阅读
问答
·
键盘事件:
-
okeydown:键盘被按下,如果一直按着键盘的按键,则okeydown事件会一直被触发。
- 当键盘按键一直被按住的时候,事件被连续触发,第一次和第二次以及后面的n次之间,触发的时间间隔会稍长,在0.5秒左右(一直按着按键,事件连续触发,第一次触发之后会有0.5秒左右的延迟,后面的连续触发事件不会有延迟,延迟只在第一次和第二次之间)。这种设计是为了防止误操作。
- 在页面中需要判断按键是否被按下,可以用一个简单的例子进行测试,如下:
<script type="text/javascript"> window.onload = function(){ document.onkeydown = function(event){ alert("有按键被按下了"); }; }; </script>
-
onkeyup::松开键盘的按键,代码演示实例和onkeydown相同只需将以上代码块做对应修改即可。
- 不会连续触发
键盘事件会绑定给一些能获取焦点的对象,或者是document
- 当需要获取判断键盘的哪一个按键被按下的时候,可以通过event的keyCode属性获取按键的编码。
- 除了键盘的编码,事件对象中还有altKey、shiftKey、ctrlKey属性,分别可以用来判断alt、shift和ctrl键是否被按下,被按下返回true,否则返回false。
<script type="text/javascript">
window.onload = function(){
document.onkeydown = function(event){
alert(event.keyCode);
if(altKey){
alert("alt键被按下了");
}else if(shiftKey){
alert("shift键被按下了");
}else if(ctrlKey){
alert("ctrl键被按下了");
}
};
};
</script>
注意,在文本框中输入内容会显示出来,这是浏览器的默认行为,如果想取消默认行为,在对应的代码块return false即可。
如果以上内容对你有帮助的话,动动小手点个赞吧!
更多推荐
已为社区贡献1条内容
所有评论(0)