2013-03-29 41 views
0

点击一个链接时,我需要JavaScript代码或HTML来在两个新浏览器标签中打开两个网站。我不希望它们在新窗口中打开,或者在当前链接所在的页面上打开。使用一个链接打开两个网页的JavaScript

+0

无法控制在新窗口中打开JavaScript与JavaScript中的新选项卡。这取决于浏览器设置,你不能控制它 – hop

+0

并与HTML? – hop

+0

http://stackoverflow.com/questions/4907843/open-url-in-new-tab-using-javascript – hop

回答

3

它可能不会工作,因为浏览器可能会认为它是一个弹出窗口并阻止它。

如果用户允许弹出窗口,你可以这样做:

​​

像:

<a id="mydoublelink" href="http://site1.com" target="_blank">foo</a> 

document.getElementById("mydoublelink").onclick=function(){ 
    window.open('http://site2.com', '_blank'); 
} 
+0

大多数浏览器弹出窗口阻止程序都允许从点击事件(以及其他一些事件)产生的弹出窗口, 。所以它会工作,除非你有一个非常积极的弹出式窗口拦截器。 – Halcyon

+0

@FritsvanCampen在句子中添加了“可能”。 – fmsf

-1

郁可尝试新的目标_newtab

<a href="site.html" target="_newtab">blabla</a> 

它工作在Firefox,唐不知道其他浏览器是否支持它。

+1

除非我错过了我的猜测,否则这只会在恰好被命名为“_newtab”的新窗口中打开“site.html”。再次单击链接将在同一窗口中再次打开该页面。这是否实际上是一个新选项卡取决于用户如何设置浏览器。它可以在新的浏览器窗口中轻松打开。 –

+0

这是开始在浏览器中实现的新行为,而不仅仅是您正在考虑的普通旧行为。 – Nelson

+2

有趣的是,我不知道:)你有链接到任何文档? –

1

如果您在onclick事件中致电window.open,您应该没问题。内置弹出式窗口拦截器允许那些。被阻止的弹出窗口来自其他事件或来自预定事件,如setTimeout

document.getElement("my_link").onclick = function() { 
    window.open(/*..*/); // works 
} 

document.getElement("my_link").onclick = function() { 
    setTimeout(function() { 
     window.open(/*..*/); // will probably get blocked 
    }); 
} 

这意味着,例如,如果您在AJAX调用后打开弹出窗口,它很可能会被阻止。在这种情况下,解决方法是立即打开弹出窗口并稍后填写内容。这超出了这个问题的范围,但我觉得这是每个人都应该知道的信息。

+0

我想在链接上打开两个链接onclick ..但我不想关闭当前标签..链接缪斯被打开另外两个标签 – Chathula

+1

然后调用'window.open()'_twice_ – Halcyon

0

是这样的吗?

<!DOCTYPE html> 
<html> 
<head> 
<script> 
function open_win() 
{ 
window.open("URL"); 
open_win_two(); 
} 
function open_win_two() 
{ 
window.open("URL"); 
} 
</script> 
</head> 
<body> 
<a onclick="open_win()">luyfl</a> 
</body> 
</html>