假设我有一个这样的输入元素:

<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变量?

最佳答案

可以使用window.event对象。
例如

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

(实际上,您甚至可以省略window

10-05 20:54
查看更多