2009-11-22 111 views
0

如何从同一个窗口打开2个不同的链接,并从另一个链接打开另一个新窗口?我想在所有A级浏览器如何在同一个窗口中打开2个不同的链接,并从一个链接打开另一个新窗口中的链接?

+0

问题是 - 为什么你想用相同的链接做呢?你试图显示一些坏东西添加那里或什么?这是一种邪恶的方法。 – kender 2009-11-22 16:27:21

+0

在第一个链接我想打开的网站,并在新窗口页面,我想在打印机友好的页面打开打印机同一页 – 2009-11-22 16:31:06

+1

有这样做的打印机友好的页面的其他方式的新的不同页面 - 使用CSS使同一页面出现不同的时打印。当您想要从打印版本中删除导航链接时,这非常有用,因为打印输出时没有任何意义。 – belugabob 2009-11-22 16:35:40

回答

1

使用JavaScript函数,首先调用window.open然后window.location的打开在父窗口和其他一个新窗口不是新标签的一环。

+0

'window.open'调用通常被弹出窗口阻止程序阻止,而'target = _blank'通常会绕过它。 – intgr 2009-11-22 16:22:44

+0

窗口。如果您只是像平常那样在'href'属性中指定重定向URL,则不需要位置。 – 2009-11-22 22:12:14

0
<a href="another.htm" target="_blank" "onclick="location.href='one.htm'">Your link</a> 

这可能会也可能不会工作,这取决于'onclick'处理程序是否在链接的标准行为之前运行。

如果没有 - 或者是间歇性的 - 让我知道,我会提供一种替代方法。

编辑:

作为替代,我想你可以有2个环节,一个是“新”的窗口,一个用于“当前”窗口。使'css'使'当前'窗口链接不可见,并在'新'链接添加一个'onclick'处理程序,这会触发'当前'链接。

<a href="another.htm" target="_blank" "onclick="$('#currentLink').click()">Your link</a> 
    <a href="one.htm" id="currentLink" style="display: none">Hidden link</a> 

一定要在多个浏览器上检查这一点。

P.S.我假设你正在使用jQuery - 如果没有,触发'click'事件的代码将需要更改。

+2

onclick总是先运行。 – Caleb 2009-11-22 16:22:38

+0

现在你提到它,它必须 - 不是吗?在这种情况下,需要完全的javascript(即不依赖于默认链接行为)方法 – belugabob 2009-11-22 16:25:12

+0

在Firefox中,两个链接都在标签中打开,在safari中它正常工作,但是在IE6 onclick链接中未打开。我想在父窗口中打开一个链接,而在新窗口中打开另一个链接而不是新标签。 – 2009-11-22 16:36:24

1

通常,如果您使用window.open并指定窗口的高度和宽度,则会导致大多数配置的大多数浏览器将其作为新窗口打开,而不是新选项卡。

下面会弹出窗口添加到链接id为link-of-doom。像往常一样指定您希望当前页面在href属性中重定向到的链接。

HTML

<a href="/page1.html" id="link-of-doom">Click me!</a> 

的JavaScript

$(function() { 
    $("#link-of-doom").click(function() { 
     window.open('/page2.html', 'sometarget', 'width=400,height=200'); 
    }); 
}); 

*你不应该使用onclick属性在HTML本身,因为它不被认为是最好的做法。 。 。每当有人使用它时,一只小猫就会被杀死。

相关问题