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));
。