2

我有一个 HTML 页面,并且有四个链接可以转到新窗口上的不同页面。

例如:

链接 1、链接 2、链接 3 链接 4

我希望链接 1 在新窗口 1 中弹出,链接 2 到新窗口 2 等等...

因此,当单击 Link2 时,Window 1 及其来自 Link1 的内容将保留。

目前,问题是四个链接在一个新窗口 1 中打开,覆盖了来自 Link1 的第一个当前内容。我想要的是每次单击链接时都有四个唯一的窗口。

我不知道是否有特定的 Javascript 函数可以执行此操作,但我现在在这四个链接上所拥有的只是定位标记上的 target="_blank"。这发生在 IE 和 Chrome 中,我想也出现在 FF 和任何其他浏览器中。

在此先感谢您的帮助。

4

4 回答 4

2

尝试

var links = document.getElementsByTagName("a");
for (var i = 0; i < links.length; i++) {
    var link = links[i];
    link.addEventListener("click", function (e) {
        e.preventDefault();
        window.open(this.href);
    });
}
于 2013-08-22T07:18:31.537 回答
2

target="_blank"将在新窗口中打开每个链接(链接是否已打开无关紧要);

如果要聚焦打开的窗口,可以使用模态窗口(即不是选项卡),如下所示:

html:

<a href="http://google.com">link 1</a><br/>
<a href="http://yahoo.com">link 2</a><br/>
<a href="http://bing.com">link 3</a><br/>
<a href="http://mamma.com">link 4</a>

js:

$(document).ready(function() {
    $('a').click(function(e) {
        var id = $(this).data("windowid");
        if(id == null || id.closed) {
            id =  window.open($(this).attr("href"), '_blank', 'modal=yes');
        }
        id.focus();
        $(this).data("windowid", id);
        e.preventDefault();
        return false;
    });
});

http://jsfiddle.net/JeQyE/2/

于 2013-08-22T07:29:42.823 回答
0

目标也可以接受名称而不是“_blank”,例如 win1 win2 等

http://www.w3.org/html/wg/drafts/html/master/browsers.html#browsing-context-names

于 2013-08-22T07:20:06.707 回答
0

使用window.open javascript函数如下,

window.open("your link")
于 2013-08-22T07:17:45.407 回答