当我按住一个按钮时,下一个示例代码会多次输出'keydown'消息.文档说,只需按一下按钮,就会发生一次keydown事件.因此,keydown事件的工作方式与下一个示例中的keypress事件类似.
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8">
<title></title>
<script type='text/javascript' src='jquery.js'></script>
<script type='text/javascript'>
function onLoad()
{
$( '#text' ).on( 'keydown', function() { console.info( 'keydown' ) } );
}
</script>
</head>
<body onload='onLoad()'>
<input type='text' id='text'>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
我在Windows,Firefox 19.0.2和Google Chrome 25.0.1364.152上进行了测试.我也创造了一个小提琴(问题可以复制).重现问题的JQuery版本:1.8.2,1.9.1.
更新.
我确实意识到了这个问题:如何在JavaScript中避免自动重复的keydown事件?.
dea*_*ock 26
keydown按下该键时会发生该事件,紧接着该keypress事件.然后在keyup释放密钥时生成事件.为了了解之间的区别
keydown和keypress,它是有用的了解"性格"和"重点"之间的区别."键"是计算机键盘上的物理按钮,而"字符"是通过按下按钮键入的符号.理论上,keydown和keyup事件表示按下或释放键,而keypress事件表示键入的字符.在所有浏览器中,该理论的实现并不相同.
| 归档时间: |
|
| 查看次数: |
15779 次 |
| 最近记录: |