如何在DOMContentLoaded触发后延迟5秒再额外执行一次代码?
实现DOMContentLoaded立即执行+5秒后额外执行一次的需求
你可以把要执行的逻辑抽成独立函数,这样既能在DOM加载完成时立刻执行,又能通过setTimeout延迟5秒再额外执行一次,完全匹配你的需求:
// 把业务逻辑抽成独立函数,避免代码重复 function doSomething() { // 这里写你的具体执行代码 } // DOM加载完成后立即执行,同时安排5秒后的额外执行 document.addEventListener('DOMContentLoaded', () => { doSomething(); // 延迟5000毫秒(5秒)后再执行一次 setTimeout(doSomething, 5000); });
- 抽成独立函数让代码更易维护,不用重复编写相同逻辑
setTimeout仅触发一次,不会出现每隔5秒重复执行的情况- 修正了原代码中
addEventListener回调函数末尾缺失的闭合括号问题
内容的提问来源于stack exchange,提问作者DumbDumbStack
相关产品推荐
相关产品推荐

