如果我以这种方式编写事件,操作执行时,它应该:的Javascript功能自动执行
document.getElementById('myElem').onmousedown = (e) => {
console.log('fired!')
}
但是,如果我正在写在其他方式相同的东西,加载页面时操作执行,一旦:
let HandleEvent = (event) => {
console.log('fired!')
}
document.getElementById('myElem').onmousedown = HandleEvent(event)
UPD: Ofcourse,这只是例子,HandleEvent
功能将有更多复杂的逻辑。
我的问题是:
- 为什么?
- 如何使其正常工作?
'onmousedown'需要一个'function'引用,但是你传递的是函数的返回值(它是'undefined'),因为你正在调用它。请改用'document.getElementById('myElem')。onmousedown = HandleEvent'。 – haim770