如何使用jQuery自动打开页面上的所有链接?

时间:2012-09-16 00:47:07

标签: javascript jquery html

我有一个包含10个链接的页面,想要在点击按钮后打开所有链接。

我使用以下代码,这对我不起作用。

<a id="some-id" href="SOShousin3.jpg">Click Here</a><br />
<a id="some-id" href="SOShousin3.jpg">Click Here</a><br />
<a id="some-id" href="SOShousin3.jpg">Click Here</a><br />
<a id="some-id" href="SOShousin3.jpg">Click Here</a><br /><br />

<script type="text/javascript">
    $('a').click(function() {
        // assign an event to a.onclick
        window.open($(this).attr('href') );
    });

    $('ButtonOne').click(function() {
        // when we press <button>, trigger a.onclick
        $('a').click();
    });
</script>

<button type="button" onclick="ButtonOne">Open Links</button>

5 个答案:

答案 0 :(得分:2)

$('#ButtonOne').click(function() {
    $('a').each(function() {
        window.open($(this).attr('href'));
    });
});

DEMO

答案 1 :(得分:1)

这听起来真的很糟糕:)但是你可以这样做:

$('#ButtonOne').click(function() {
  $('a').each(function(){
    window.open($(this).attr('href') );
  });
});

您还应删除onclick属性并将其替换为id="ButtonOne"

答案 2 :(得分:0)

您的选择器完全错误。它应该是......

<button type="button" id='buttonOne'>Open Links</button>​
$('#buttonOne').click(function() {
    // when we press <button>, trigger a.onclick
    $('a').click();
});

答案 3 :(得分:0)

按钮的选择器是错的,你应该传递一个右选择器,最好为按钮设置一个id,试试这个

<a id="some-id" href="SOShousin3.jpg">Click Here</a><br />
<a id="some-id" href="SOShousin3.jpg">Click Here</a><br />
<a id="some-id" href="SOShousin3.jpg">Click Here</a><br />
<a id="some-id" href="SOShousin3.jpg">Click Here</a><br /><br />

<script type="text/javascript">
$('a').click(function() {
// assign an event to a.onclick
window.open($(this).attr('href') );
});

$('#ButtonOne').click(function() {
// when we press <button>, trigger a.onclick
$('a').click();
});

</script>
<button type="button" id="ButtonOne">Open Links</button>

答案 4 :(得分:0)

$('ButtonOne')中的选择器错误。这是试图选择所有元素。如果ButtonOne是一个id,你可以使用$(“#ButtonOne”),如果它是一个类,你可以使用$(“button.ButtonOne”)。否则,其他两个回答都是正确的。