获取“keydown事件的'charCode'属性不应该使用。值是没有意义的”jQuery中的错误

时间:2010-04-14 16:12:28

标签: jquery keydown

我得到“不应该使用keydown事件的'charCode'属性。该值无意义”使用jQuery的firefox中出错。我的代码如下所示:

$("div#center-box div#empid-textbox input.id").keydown(function(e){
   key = e.which;
   if(key===13){
      //do something;
   };
});

有谁知道如何解决此错误?

2 个答案:

答案 0 :(得分:4)

固定!!!

好像FF不喜欢'keydown'功能...我把它改成了'keypress'而且效果很好。

答案 1 :(得分:4)

检查http://api.jquery.com/event.which/

上的第一条评论
  

我使用jQuery 1.4.2和Firefox 3.6.3也发现了同样烦人的行为。对我来说,修复是从jquery-1.4.2.js的第1956行中的克隆属性列表中删除“charCode” - 此列表包含要从浏览器中的原始事件克隆到定制的jQuery事件对象的属性。更健全。   读取克隆过程中的“charcode”属性似乎会在错误控制台中触发警告。克隆实际属性,无论是“keyCode”还是“charCode”,如果将1996-1998行更改为:

if (!event.which && ((originalEvent.charCode || originalEvent.charCode === 0) ? event.charCode : event.keyCode)) {
  event.which = originalEvent.charCode || event.keyCode;
}
     

即。如果存在,则更精细地克隆charCode属性。