将延迟和eventListener设置为click的页面更改为在不考虑单击的情况下工作



im试图在用户点击屏幕中特定div时以3秒的延迟更改html页面。

document.getElementById("specificDiv").addEventListener("click", setTimeout(document.getElementById("linkToAnotherPage").click(), 3000) )

但是eventListener不起作用。当页面加载时;链接到另一个页面";加载页面3秒后。

如果有人能帮我理解这里出了什么问题,我会很高兴的。

setTimeout接受一个函数。如果您不传递函数,它将立即运行代码。但是,如果您传递一个函数,那么该函数将在指定时间后被调用。演示:

setTimeout(console.log('Hello World 2'), 5000)
setTimeout(() => console.log('Hello World 1'), 5000)

因此,如果您希望代码在执行单击之前等待指定的3秒,则应将代码更新为:document.getElementById("specificDiv").addEventListener("click", setTimeout(() => document.getElementById("linkToAnotherPage").click(), 3000));

相关内容

最新更新