Javascript 事件未定义错误,仅在firefox中

Javascript 事件未定义错误,仅在firefox中,javascript,events,keydown,onkeydown,Javascript,Events,Keydown,Onkeydown,我在下面有一个代码,它告诉你当你在文本区键入时,你按下了哪些键,它在谷歌浏览器中工作。但是,在Firefox中,当您按下某个键时,会出现一个未定义的事件错误。我们如何解决这个问题 <textarea onkeydown = "checkKey()"></textarea> <script> function checkKey() { var key = event.keyCode; alert(key); } //end of checkKey()

我在下面有一个代码,它告诉你当你在文本区键入时,你按下了哪些键,它在谷歌浏览器中工作。但是,在Firefox中,当您按下某个键时,会出现一个未定义的事件错误。我们如何解决这个问题

<textarea onkeydown = "checkKey()"></textarea>

<script>

function checkKey() {

var key = event.keyCode;
alert(key);

} //end of checkKey()

</script>

函数checkKey(){
var key=event.keyCode;
警报(键);
}//checkKey()的结尾

附言:我不想要jQuery解决方案。仅限纯JavaScript。除非我们不能用纯JavaScript实现。然后我将接受jQuery解决方案。

事件在chrome中定义,但在firefox中没有定义。您可以将事件作为参数传递

<textarea onkeydown = "checkKey(event)"></textarea>

<script>

function checkKey(event) {

var key = event.keyCode;
alert(key);

} //end of checkKey()

</script>

功能检查键(事件){
var key=event.keyCode;
警报(键);
}//checkKey()的结尾

事件在chrome中定义,但在firefox中没有定义。您可以将事件作为参数传递

<textarea onkeydown = "checkKey(event)"></textarea>

<script>

function checkKey(event) {

var key = event.keyCode;
alert(key);

} //end of checkKey()

</script>

功能检查键(事件){
var key=event.keyCode;
警报(键);
}//checkKey()的结尾

您正在使用非标准的全局
事件
对象<代码>事件
对象必须在FF中传递,也可能在其他浏览器中传递。最好使用
addEventListener
添加事件,它在所有现代浏览器中都能工作。我强烈建议使用
.addEventListener
而不是内联事件。
函数checkKey(event){…}
…@MarcB如果checkKey已经有超过0个参数怎么办?jQuery是用纯javascript编写的库,jQuery所做的任何事情都只是javascript已经可以做的函数的快捷/方便方法包装器。您正在使用非标准的全局
event
对象<代码>事件
对象必须在FF中传递,也可能在其他浏览器中传递。最好使用
addEventListener
添加事件,它在所有现代浏览器中都能工作。我强烈建议使用
.addEventListener
而不是内联事件。
函数checkKey(event){…}
…@MarcB如果checkKey已经有超过0个参数怎么办?jQuery是用纯javascript编写的库,jQuery所做的任何事情都只是javascript已经可以做的函数的快捷/方便方法包装器。我们是否只是向参数添加事件?将
event
保留为
checkKey(event,arg1,arg2)中的第一个参数
我们是否只是将事件添加到参数中?将
event
保留为
checkKey(event,arg1,arg2)中的第一个参数