如果我以這種方式編寫事件,操作執行時,它應該:的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