【发布时间】:2018-03-01 07:07:49
【问题描述】:
我有一个包含图像 url 的数组,并希望每 10 秒更改一次 img 标记的 src。
我使用forEach 遍历数组,回调包含一个setTimeout,它定期调用执行DOM 操作的函数(replaceImage),如下所示:
const el = document.querySelector('img');
images.forEach((obj: Image, index: number) => {
timer = window.setTimeout(() => {
replaceImage(el, obj);
}, index * 10000);
});
但是,如果单击按钮,我希望循环不等待超时并跳到下一次迭代,即立即替换图像。
我天真地认为这可以通过点击按钮 clearTimeout(timer) 来完成。
(附带说明一下,上述情况发生在 Electron 应用程序的渲染器进程中)。
【问题讨论】:
标签: javascript typescript foreach electron settimeout