gpt4 book ai didi

Javascript自动函数执行

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:53:18 26 4
gpt4 key购买 nike

如果我以这种方式编写事件,则 Action 会在应该执行的时候执行:

 document.getElementById('myElem').onmousedown = (e) => {
console.log('fired!')
}

但是如果我用其他方式写同样的东西, Action 会在页面加载时执行一次:

let HandleEvent = (event) => {
console.log('fired!')
}
document.getElementById('myElem').onmousedown = HandleEvent(event)

更新:当然这只是例子,HandleEvent函数的逻辑要复杂得多。

我的问题是:

  1. 为什么?
  2. 如何让它正常工作?

最佳答案

document.getElementById('myElem').onmousedown = HandleEvent;

会做你想做的事;你不应该在分配它时执行处理程序。您应该只分配函数引用。

然后你也可以将它指定为 onload 处理程序,甚至你自己调用它(如果你不依赖事件对象)

关于Javascript自动函数执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38243984/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com