操纵click之间page.evaluate循环单击之间的等待时间

时间:2020-04-28 17:15:04

标签: javascript loops puppeteer evaluate

我正在尝试在循环内的clic之间等待1秒钟,但它不起作用,你知道我该怎么做吗? 谢谢

await page.goto("https://mywebsite.local");
page.evaluate(()=>{
    let elements = document.querySelectorAll("a.special.video");//25-30 element
    for (let element of elements){
        setTimeout(() => {
            element.click();
        }, 1000);  
    }
});

我必须在两次点击之间等待,因为每次点击我都在等待ajax刷新内容

1 个答案:

答案 0 :(得分:0)

您可以将索引值乘以在点击之前获得1秒的间隔:

page.evaluate(()=>{
    let elements = document.querySelectorAll("a.special.video");//25-30 element
    elements.forEach((element, index) => {
        setTimeout(() => {
            element.click();
        }, index * 1000);  
    })
});