Javascript-单击其他按钮时,单击具有类或id的多个元素

Javascript-单击其他按钮时,单击具有类或id的多个元素,javascript,loops,onclick,click,settimeout,Javascript,Loops,Onclick,Click,Settimeout,我想单击一个按钮,同时单击其他按钮,或者每个按钮之间有一个延迟。这些额外的按钮共享相同的类,它们的id以相同的命名开始。我知道我可以用jQuery轻松地完成这一点,但我想用Vanilla Javascript实现它 我尝试使用querySelector,但这只会触发第一个元素。 另外,我还找到了另一个解决方案,为每个按钮设置超时,问题是当窗口加载时会触发超时,我需要它在单击其他按钮时工作 这是我的html代码: 按钮1 按钮2 按钮3 触发 这只会触发第一个按钮: function testOn

我想单击一个按钮,同时单击其他按钮,或者每个按钮之间有一个延迟。这些额外的按钮共享相同的类,它们的id以相同的命名开始。我知道我可以用jQuery轻松地完成这一点,但我想用Vanilla Javascript实现它

我尝试使用querySelector,但这只会触发第一个元素。 另外,我还找到了另一个解决方案,为每个按钮设置超时,问题是当窗口加载时会触发超时,我需要它在单击其他按钮时工作

这是我的html代码:

按钮1 按钮2 按钮3 触发 这只会触发第一个按钮:

function testOne() {
    document.querySelector(".bundle-product-button").click();
}
document.querySelector(".add-bundle-to-cart").onclick = testOne;
当窗口加载时会触发:

var clickcallback = function(i) {
  setTimeout(function() {
    let id = "button" + i;
    document.getElementById(id).click();
  }, 1000); // one second
  if(i <= 3) {
    clickcallback(i+1);
  }
};
clickcallback(1);
我知道这可能很简单,但如何在单击一个元素时触发多次单击。

querySelector仅匹配第一个元素,您必须使用queryselectoral,然后对每个元素使用queryselectoral

function testOne() {
    document.querySelectorAll(".bundle-product-button").forEach(function(el) {
       el.click();
    });
}
document.querySelector(".add-bundle-to-cart").onclick = testOne;

谢谢我很接近,我正在使用querySelectorAll进行测试,但是我缺少el元素。