在 JavaScript 代码中添加 5 秒延迟点击下一步按钮

Rob*_*hue 2 javascript dom click

我正在执行这个 JavaScript,这是一种自我解释(我认为)。一个带有类的页面上大约有 100 个按钮button,我希望它们一个一个地点击。它工作正常。

但我想在点击下一步按钮之前添加 5 秒的延迟。

var mybtn = document.getElementsByClassName('.button');
for( var i=0; i<100; i++ ) {
    mybtn[i].click();
}
Run Code Online (Sandbox Code Playgroud)

moh*_*ias 5

您可以使用setInterval该功能。

而不是手动指定100使用长度属性。

也避免使用getElementsByClassName它的非标准。相反document.querySelectorAll,大多数浏览器都支持。

var mybtn = document.querySelectorAll('.button');
var i = 0;

var timer = setInterval(function() {
     if( i < mybtn.length) {
         mybtn[i].click();
         console.log("Click handler for button " + i + " fired");
     } else {
         clearInterval(timer);
     }
     i = i + 1;
}, 5000);
Run Code Online (Sandbox Code Playgroud)
<div class="button">Hi1</div>
<div class="button">Hi2</div>
<div class="button">Hi3</div>
<div class="button">Hi4</div>
<div class="button">Hi5</div>
Run Code Online (Sandbox Code Playgroud)