如何在jQuery中单击按钮并打开无序列表中的所有链接

时间:2013-11-13 17:02:52

标签: javascript jquery

我想要一个按钮,如果点击它将点击()特定无序列表中的所有链接。

<ul id="linkslist">
    <li><a href="#" target="_blank">Link 1</a></li>
    <li><a href="#" target="_blank">Link 2</a></li>
    <li><a href="#" target="_blank">Link 3</a></li>
    <li><a href="#" target="_blank">Link 4</a></li>
    <li><a href="#" target="_blank">Link 5</a></li>
</ul>
<button value="open all" id="openallbutton">

我意识到这个例子本身可能是用简单的javascript完成的,但是由于我要用jQuery扩展它,我更喜欢在这个例子中使用jQuery。非常感谢。

4 个答案:

答案 0 :(得分:0)

你可以这样做:

jQuery('#linkslist li a').each(function(){
   //if you want to open links in new tabs
   window.open($(this).attr('href'), '_blank');
   //if your links are only javascript entries (i mean href="#" and a click event is handled)
   $(this).click();
});

答案 1 :(得分:-1)

$('#linkslist li a').each(function(){
    $(this).click();
});

这将点击它们。如果您没有将事件附加到点击,并且它们在href中有链接,显然,您将被重定向到单个链接。

答案 2 :(得分:-1)

一次打开​​所有这些链接的目的是什么?有机会被视为恶意活动。

触发&#39;点击每个链接,您可以执行以下操作:

$('#linkslist li a').each(function() {
    $(this).trigger('click');
});

这可以解决问题,我很确定这实际上不会打开页面,因为它会尝试以编程方式点击每个链接。

答案 3 :(得分:-1)

这将通过单击按钮将它们全部点击....如果您希望它们在其他窗口中打开,编程点击将不会这样做,并且必须解析每个href来执行此操作< / p>

/* button clcik*/
$('#openallbutton').click(function(){
    /* trigger click on all links*/
    $('#linkslist li a').click();
})