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

IT技术 javascript jquery html
2021-02-11 06:41:20

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

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

例如,标题为“单击此处”的链接在单击时将打开两个不同的空白窗口。

6个回答

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 有时会被弹出窗口阻止程序和/或广告过滤器阻止。

下面来自 Paul 的补充:这种方法还依赖于启用的 JavaScript。通常不是一个好主意,但有时是必要的。

一个合理的方法,保罗。渐进增强将拯救我们所有人。
2021-03-24 06:41:20
此外,如果 JavaScript 被禁用,那么当点击链接时什么也不会发生。像往常一样在 HTML 中包含链接可能会更好,但使用类(如yourlink),然后使用 jQuery 将它们组合成一个链接,打开所有 URL。这样你就可以在 HTML 中指定 URL,而不是在 JavaScript 中。
2021-04-03 06:41:20
太棒了,本。当您可以单击答案左侧的复选框时,请务必将其标记为答案。
2021-04-04 06:41:20
虽然这在 Firefox 中仍然有效,但 Chrome 的弹出窗口阻止程序现在会阻止第二个 window.open(在 Chrome 37 和 FF 32 中测试)。JSFiddle:jsfiddle.net/y3p8tpvt
2021-04-06 06:41:20

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

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

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

这个对我有用。谢谢你。还有一件事:窗口将集中在最后的 onclick 网址上。:)
2021-03-27 06:41:20

您可能希望安排您的 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.
});

这段代码假设您只想在每页使用一个这样的“多重链接”。(我也没有测试过它,所以它可能充满了错误。)

并假设他想使用 jQuery,尽管公平地说,他已将其标记为 jQuery。好方法
2021-03-15 06:41:20

您可以单击打开多个窗口...试试这个..

<a href="http://--" 
     onclick=" window.open('http://--','','width=700,height=700'); 
               window.open('http://--','','width=700,height=500'); ..// add more"
               >Click Here</a>`

您需要取消阻止浏览器的弹出窗口,代码才能工作。

铬://设置/contentExceptions#popups

Chrome 浏览器设置