在直接声明的HTML事件标记中获取事件对象

时间:2015-12-18 19:42:23

标签: javascript html events

所以我想说我有一个像这样的输入元素:

<input type="text" id="123">

现在,如果我为keydown添加事件监听器,我可以这样做:

document.getElementById("123").onkeydown = function(e) {
    console.log(e.keyCode);
};

但是如果我想直接在HTML中进行,就像这样:

<input type="text" id="123" onkeydown="console.log(e.keyCode);">

我会收到此错误:

Uncaught ReferenceError: e is not defined

如果我想直接在HTML文档中设置事件,如何捕获e变量?

1 个答案:

答案 0 :(得分:5)

您可以使用 window.event 对象。

e.g。

<input type="text" id="123" onkeydown="console.log(window.event.keyCode);">

(事实上,你甚至可以省略window。)