两个动作之间同步同步和延迟

时间:2019-07-04 01:24:19

标签: javascript for-loop delay

let files = document.querySelectorAll('#app .File');
let downloadButton = document.querySelector('.button-download');

for (let file of files) { 
    file.click(); // click file
    setTimeout(() => {}, 1000); // delay of 1 sec between two clicks
    downloadButton.click(); // click download 
}

..但它似乎不起作用。 for-of是同步运行的,但是它仍然会多次下载最后一个文件。

1 个答案:

答案 0 :(得分:1)

如果您需要“延迟”功能,则可以创建以下内容:

array.filter()

此后,您要做的就是将代码包装在function delay (ms) { return new Promise(resolve => { setTimeout(resolve, ms) }) } 函数中,以便在调用“延迟”函数时可以使用async关键字。

await