在Firefox中捕获keyCode值

时间:2016-02-11 15:22:23

标签: javascript firefox

我试图通过捕获onkeypress事件来限制哪些字符可以输入到文本框中。以下(简化)代码段在Google Chrome和Internet Explorer中运行良好,但不适用于Firefox:

function CheckKeyPress(e) {
    alert("Check point #1");
    var x = e || window.event;
    var key = (x.keyCode || x.which);
    alert("Check point #2");
    // do some stuff here
    return
}

Firefox不会触发第二个警报。为什么不呢?

非常感谢任何和所有回复。

1 个答案:

答案 0 :(得分:0)

我在搜索其他网站时找到了答案。我对受影响文本框的内联声明的以下更正解决了我的问题:

 onkeypress="CheckKeyPress(this,arguments[0] || window.event)"

似乎Internet Explorer更喜欢显式传递window.event对象,而Firefox(和其他非IE浏览器)更喜欢传递参数引用。

感谢所有做出回应的人..