仅使用javascript和html在浏览器中在相同的两个选项卡之间切换

ALG*_*ALG 5 html javascript internet-explorer

我想要做什么的想法是当我在Internet Explorer浏览器的一个选项卡上打开一个网站并点击链接时,它应该在同一浏览器中打开一个新的选项卡,其中包含pdf页面初始化... pdf页面有一个很多链接,如果你尝试点击其中任何一个,他们应该带你回到旧的选项卡,你设法午餐打开pdf并继续在这两个选项卡之间切换我希望这个想法是明确的...我正在尝试做这使用html和javascript ...这是我写的,但我在这里仍然遗漏了很多.提前感谢您提供的任何帮助

这件作品在另一个窗口吃了另一个瞬间

<html>
<head>
<script>
function son()
{

 myWindow=window.open('','','width=500,height=500');
 myWindow.document.write(" SON !");
 myWindow.focus();
 myWindow.opener.document.write("<p> DAD !</p>");
}
</script>
</head>
<body>

<input type="button" value="Open " onclick="son()" />

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

这个文件是我内置pdf文件的地方.

<object data="Test.pdf" type="application/pdf" width="100%" height="100%">

<p>It appears you don't have a PDF plugin for this browser.
you can <a href="Test.pdf">click here to
download the PDF file.</a></p>

</object>
Run Code Online (Sandbox Code Playgroud)

再次感谢

jos*_*736 5

在过去,您可以使用窗口的focus方法将窗口/选项卡带到前台.但是,滥用(主要是广告商的弹出窗口形式)导致浏览器限制或禁用该功能.

如果我们忽略PDF部分,从概念上讲,这是一个非常简单的请求.首先,打开一个窗口并保持其参考:

var pop = window.open('page.html'); // opens in new tab on most browsers
Run Code Online (Sandbox Code Playgroud)

在辅助页面中,切换回原始页面很简单:

window.opener.focus(); // no longer works in most modern browsers
Run Code Online (Sandbox Code Playgroud)

从第一页开始,切换回来:

pop.focus();  // might work
Run Code Online (Sandbox Code Playgroud)

我的测试中,我无法让IE 9或Chrome 21切换回开启标签.在Chrome中,我可以打开第二页,手动切换回原始标签,然后调用pop.focus()确实将第二个标签重新置于焦点.(IE什么也没做.)我可以通过window.opener.alert('...');从辅助页面调用来强制Chrome回到开始页面,但这是一个丑陋的黑客攻击.

所以看起来你无法将其拉下来,至少不可靠.

我不确定你想要完成什么(TOC?),但是你想过打开两个窗户吗?使用覆盖屏幕左侧的链接打开一个,使用PDF打开另一个链接.


Joe*_*Joe 2

JavaScript 没有用于控制选项卡的 API。因此,你不能这样做。

您可以打开窗口,但无法控制它是选项卡还是窗口。