单击时如何使链接打开多个页面

时间:2011-08-15 12:39:39

标签: javascript jquery html

我有两个(或更多)链接。例如:http://google.comhttp://yahoo.com

当我点击一个链接时,如何让它们打开

例如,一个名为“点击此处”的链接,当点击该链接时,将打开两个不同的空白窗口。

6 个答案:

答案 0 :(得分:38)

HTML:

<a href="#" class="yourlink">Click Here</a>

JS:

$('a.yourlink').click(function(e) {
    e.preventDefault();
    window.open('http://yoururl1.com');
    window.open('http://yoururl2.com');
});

window.open也可以使用其他参数。在这里查看:http://www.javascript-coder.com/window-popup/javascript-window-open.phtml

您还应该知道window.open有时被弹出窗口拦截器和/或广告过滤器阻止。

保罗在下面添加:此方法还依赖于启用JavaScript。通常不是一个好主意,但有时是必要的。

答案 1 :(得分:15)

我是以一种简单的方式做到的:

    <a href="http://virtual-doctor.net" onclick="window.open('http://runningrss.com');
return true;">multiopen</a>

它会在新窗口中打开runningrss并在同一窗口中打开virtual-doctor

答案 2 :(得分:9)

您可能希望安排HTML,以便即使未启用JavaScript,用户仍可以打开所有链接。 (我们称之为逐步增强。)如果是这样,这样的事情可能会很好:

HTML

<ul class="yourlinks">
    <li><a href="http://www.google.com/"></li>
    <li><a href="http://www.yahoo.com/"></li>
</ul>

的jQuery

$(function() { // On DOM content ready...
    var urls = [];

    $('.yourlinks a').each(function() {
        urls.push(this.href); // Store the URLs from the links...
    });

    var multilink = $('<a href="#">Click here</a>'); // Create a new link...
    multilink.click(function() {
        for (var i in urls) {
            window.open(urls[i]); // ...that opens each stored link in its own window when clicked...
        }
    });

    $('.yourlinks').replaceWith(multilink); // ...and replace the original HTML links with the new link.
});

此代码假设您只想在每页中使用一个“多链接”。 (我也没有对它进行测试,因此可能存在错误。)

答案 3 :(得分:0)

我在Paul&amp; amp; amp; amp; amp ;;亚当的方法:

打开链接数组的链接已经在html中。 jquery只是创建链接数组,并在&#34; open-all&#34;单击按钮:

HTML:

<ul class="links">
<li><a href="http://www.google.com/"></a></li>
<li><a href="http://www.yahoo.com/"></a></li>
</ul>

<a id="open-all" href="#">OPEN ALL</a>

JQUERY:

$(function() { // On DOM content ready...
    var hrefs = [];

    $('.links a').each(function() {
        hrefs.push(this.href); // Store the URLs from the links...
    });

    $('#open-all').click(function() {
        for (var i in hrefs) {
            window.open(hrefs[i]); // ...that opens each stored link in its own window when clicked...
        }
    });
});

你可以在这里查看: https://jsfiddle.net/daveaseeman/vonob51n/1/

答案 4 :(得分:0)

这是javascript中的一个基本实现 - 我将它分离到一个外部文件中

HTML

<a href="" id="multi-link-opener" onclick="openMultipleLinks(myLinks)">Click To Open Links</a>

JS

var myLinks = [
"https://google.com",
"https://www.w3schools.com/jsref/met_win_open.asp",
"https://developer.mozilla.org/en-US/docs/Web/API/Window/open"
]

function openMultipleLinks(links) {
  for (var i = 0; i < links.length; i ++) {
    window.open(links[i]);
  } 
}

请注意,用户必须启用弹出窗口才能打开页面。

它正在运行:https://jsfiddle.net/cuppajoeman/rjavuhcg/

答案 5 :(得分:-1)

您需要取消阻止浏览器的弹出窗口,代码才能正常运行。

  

铬://设置/ contentExceptions#弹出窗口

Chrome browser setting