单击查询选择器选择的所有链接

Click all links selected by query selector

本文关键字:链接 选择 查询 选择器 单击      更新时间:2023-09-26

我通过类选择器得到一个标签数组,我想点击所有这些链接

例如

$('.sample')返回

<a class="sample" href......</a>
<a class="sample" href......</a>
<a class="sample" href......</a>

当我调用$('.sample').click()只点击数组的第一个元素

.get(0)将允许您瞄准数组中的第一个元素:

 $('.sample').get(0).click();

因为当您执行$('.sample').click()时,列表中的第一个锚元素将执行click(),并且它将开始导航到锚中指定的href,这就是文档开始卸载并在窗口中加载新文档的地方。

检测兄弟节点,然后像这样单击它们:

$('a.sample').click(function(e) {
  var curLink=$(this);
  if (curLink.hasClass('clicked')) {
    setTimeout(function(){
      curLink.removeClass('clicked');
    },500);
    return false;
  } else {
    curLink.addClass('clicked');
    $('p').append("<br>Clicked: " + curLink.text() + ';');
    curLink.siblings().each(function() {
      $(this).click();
    });
  }
})
.clicked{color:purple}
a{cursor:pointer}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a class="sample">1st link</a><br>
<a class="sample">2nd link</a><br>
<a class="sample">3rd link</a>
<p></p>

超时将删除类,允许您再次重新单击它们。您还可以通过在每个循环中放置类似的超时来延迟每次单击。