插入“事件”之间有什么区别?

时间:2014-10-16 16:24:43

标签: javascript

<!DOCTYPE html>
<html>
<head>
<script>
function whichButton() {
    document.getElementById("demo").innerHTML = event.keyCode;
}
</script>
</head>

<body onkeyup="whichButton()">

<p><b>Note:</b> Make sure the right frame has focus when trying this example!</p>

<p>Click on this page, and press a key on your keyboard.</p>

<p id="demo"></p>

</body>
</html>

以上是我修改过的w3schools.com的代码。

原始代码有参数&#39; event&#39;像这样:whichButton(事件)

我想知道该参数的功能是什么&#39;事件&#39;以及为什么人们会插入这样的事件&#39;参数。

我删除了那个&#39;事件&#39;来自上面代码的参数,但它仍然可以正常工作。

我认为代码没错。必须有一些我不知道的东西......

2 个答案:

答案 0 :(得分:0)

“event”是一个兼性事件回调参数,它可用于获取许多信息,例如触发了哪个键。

有关更多信息,请参阅Event

答案 1 :(得分:0)

隐式event在所有浏览器中无效,不应使用。我的猜测是,出于兼容性原因,event被添加到某些浏览器中。

以下测试告诉我们它们是否是对同一对象的引用:

document.body.addEventListener("keyup", function (e) { alert(e === event); });

Internet Explorer 11:true

Google Chrome 39:true

Mozilla Firefox 33:ReferenceError: event is not defined