使用jQuery处理浏览器无关的键码

使用jQuery处理浏览器无关的键码,jquery,cross-browser,jquery-events,Jquery,Cross Browser,Jquery Events,jQuery是否支持为独立编程翻译浏览器相关的键码?我有一些这样的代码 $("#container").delegate("input", "keyup", function(event){ if(event.which == 107){ event.preventDefault(); addSomething(); } }); 当按下+时,它应该将一些新元素附加到我的$(文档)。例如,显然这在Chrome中不起作用,因为Chr

jQuery是否支持为独立编程翻译浏览器相关的键码?我有一些这样的代码

$("#container").delegate("input", "keyup", function(event){
    if(event.which == 107){
        event.preventDefault();
        addSomething();         
    }
});
当按下
+
时,它应该将一些新元素附加到我的
$(文档)
。例如,显然这在Chrome中不起作用,因为Chromes的
+
键码恰好是187。我想,这应该是一个经常出现的问题,并且假设有一种方法可以使用与
事件不同的信息,而
事件已经独立于浏览器?我发现有一个for
shift
-键。但这是否适用于所有键?是否已证明这在每个浏览器中都有效?我想到类似这样的事情

...
if(event.+){ //or maybe if(event.plus){
...

有,作者Tzury Bar Yochay和John Resig。它可以处理几乎任何键[向下/向上/按下]的情况。

有,作者Tzury Bar Yochay和John Resig。这几乎可以处理任何键[向下/向上/按下]的情况。

事件。在我所有的浏览器(Chrome、Opera、Firefox和Safari)中,
+
键的
是43,它与
+
字符的ASCII码匹配。我使用的是德国键盘,看起来像。可能是因为我面临更大的问题..检查
event.charCode
event.keyCode
中的值是否不同。显然,187将是“右指双角度引号”(
>
),即使对于您的键盘布局也似乎不正确。哦,您是对的!我的
keypress
事件也是43,但我的
keyup
事件在Chrome中是187<代码>事件。在我所有的浏览器(Chrome、Opera、Firefox和Safari)中,
+
键的
是43,它与
+
字符的ASCII代码匹配。我使用的是一个德国键盘,看起来像。可能是因为我面临更大的问题..检查
event.charCode
event.keyCode
中的值是否不同。显然,187将是“右指双角度引号”(
>
),即使对于您的键盘布局也似乎不正确。哦,您是对的!我的
keypress
事件也是43,但我的
keyup
事件在Chrome中是187!