javascript - 在单击下一步按钮之前在 JavaScript 代码中添加 5 秒的延迟

标签 javascript dom click

我正在执行这段不言自明的 JavaScript(我认为)。类 button 的页面上大约有 100 个按钮,我希望它们一个一个地单击。一切正常。

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

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

最佳答案

您可以使用 setInterval 实现该功能。

不要手动指定 100,而是使用 length 属性。

同时避免使用 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);
<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>

关于javascript - 在单击下一步按钮之前在 JavaScript 代码中添加 5 秒的延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29428746/

相关文章:

Javascript - 防止将 onclick 事件附加到具有相同类的所有元素

javascript - 如何检查对象是否是 DOM 元素?

javascript - 页面数据中地址的 URL?

javascript - fancybox 没有正确加载内容

Jquery click 不适用于动态添加的链接

javascript - 自动点击链接事件

swift - 如何在 swift 中做可点击的字符串?

javascript - 如何从 Google Analytics 探索表单中获取数据

javascript - userServic不会将数据传递到后端: Cannot read property 'protocol' of undefined - AngularJS

javascript - 在 Javascript 中计算元素高度