gpt4 book ai didi

javascript - 无法在 'addEventListener' 上执行 'EventTarget'

转载 作者:行者123 更新时间:2023-12-01 00:02:03 25 4
gpt4 key购买 nike

我遇到了无法摆脱的 JavaScript 错误:Uncaught TypeError: 无法在“EventTarget”上执行“addEventListener”:作为参数 2 提供的回调不是对象。

这是脚本,在标签后面的 cookie 同意模块中使用:

window.addEventListener("load", setTimeout(   function(){
window.cookieconsent.initialise({
"palette": { "popup": {"background": "#DCDCDC"},
"button": {"background": "#9bba44"}
},
"position": "bottom-right",
"content": { "message": "We use cookies.",
"accept": "Accept all",
"deny": "Decline all",
"link": "Find out more." }
})
}, 3000));
</script>

如果需要,我可以查看 cookieconsent.initialise,但错误可能是其他原因,对于有经验的人来说更微不足道。这里的第二个参数是什么?

最佳答案

window.addEventListener 的第二个参数应该是一个函数。

你所拥有的归结为:

window.addEventListener("load", setTimeout(function(){ /* stuff */}, 3000));

setTimeout 在您调用 addEventListener 时被调用,并且 setTimeout 的返回值(超时 id >) 被传递给 addEventListener

您需要将 setTimeout 包装在函数中:

window.addEventListener("load", () => setTimeout(function(){
/* stuff */
}, 3000));

现在,您将一个函数传递给 addEventListener,该函数可以在 load 事件上调用。该函数将设置一个新的超时。

关于javascript - 无法在 'addEventListener' 上执行 'EventTarget',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60655266/

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