猿问

jQuery事件按键:按了哪个键?

jQuery事件按键:按了哪个键?

使用jQuery时,如何找到绑定到keypress事件时按下的键?

$('#searchbox input').bind('keypress', function(e) {});

我想在下列情况下触发提交进入是按下的。

[最新情况]

尽管我自己找到了(或者更好的)答案,但似乎有一些变化的空间;

有什么区别吗?keyCodewhich-尤其是如果我只是在找进入,哪一个永远不会是Unicode密钥?

有些浏览器提供一个属性,而其他浏览器提供另一个属性吗?


扬帆大鱼
浏览 633回答 3
3回答

慕标5832272

实际上,这样做更好: var code = e.keyCode || e.which;  if(code == 13) { //Enter keycode    //Do something  }

小怪兽爱吃肉

尝尝这个$('#searchbox input').bind('keypress', function(e) {     if(e.keyCode==13){         // Enter pressed... do anything here...     }});

三国纷争

如果您使用的是jQueryUI,那么您可以对通用密钥代码进行翻译。在……里面UI/ui.core.js:$.ui.keyCode = {      ...     ENTER: 13,      ...};在test/SIMPLE/jquery.simate.js中也有一些翻译,但我在核心JS库中找不到任何翻译。请注意,我只是把消息来源说出来了。也许还有别的方法可以摆脱这些神奇的数字。您还可以使用String.charCodeAt和.from CharCode:>>> String.charCodeAt('\r') == 13true>>> String.fromCharCode(13) == '\r'true
随时随地看视频慕课网APP
我要回答