我无法让jQuery keyup和keydown事件一起工作.看到这个jsFiddle:http://jsfiddle.net/CXkam/1/
这里的代码也很容易:
$(document).keyup(function (event) {
alert('Keyup');
});
$(document).keypress(function(e) {
alert('Keypress: ' + String.fromCharCode(e.which));
});
$(document).keydown(function(e) {
alert('Keydown: ' + String.fromCharCode(e.which));
});
Run Code Online (Sandbox Code Playgroud)
如果您注释掉keypress()和keydown()处理程序,则keyup()警报会触发.
但如果你不这样做,那么keyup()永远不要开火.
为什么不?
谢谢!
如果在对话框启动时释放密钥,则不会触发.keyup和.keypress事件,因为密钥消息被发送到对话框,由于我对事物的理解非常有限,因此不会将其视为一部分.该文件.你可以做什么,如果你想看到它"工作",按住一个键(让我们去T!),点击空格键关闭对话框,然后释放T键.然后将.keyup消息发送到文档并按预期处理.
如果你摆脱了.keydown和.keypress函数 - 或者其中的警报 - 那么.keyup就可以了.
嗯,我认为这实际上与alert()的问题有关.也许它被称为太快或其他东西.因为如果用console.log调用替换它,你可以清楚地看到它正在工作
http://jsfiddle.net/WJsV6/在FF中尝试一下.所有3种方法实际上都是火
| 归档时间: |
|
| 查看次数: |
1027 次 |
| 最近记录: |