2010-05-20 97 views
0

我正在与我的同事讨论。我们在标签浏览环境中有一个Web应用程序,比如打开2个标签页。 Tab2有一个链接到tab1,当我点击链接,它打开tab1在一个新的选项卡。我们想检测标签1是否已经打开,如果是,则将焦点设置为tab1(并且不打开新窗口)。选项卡式浏览,导航到另一个打开的选项卡

他已经在布鲁塞尔的窗口环境中得到了这个工作,但表示它不可能在选项卡式环境中使用。

是否有可能让JavaScript来确定tab1是否已经打开,然后只需将焦点设置为该选项卡?

+0

我删除了'java'标记。 [Java](http://en.wikipedia.org/wiki/Java_%28programming_language%29)是**不是** [JavaScript](http://en.wikipedia.org/wiki/JavaScript)。 – BalusC 2010-05-20 16:08:12

回答

0

这是唯一可能的,如果web浏览器已经预配置在一个新的标签,而不是新的窗口,并设置来打开目标链接集中到它本身当你给的链接相同目标名称。

E.g.

<a href="http://google.com" target="somename">link1</a> 
<a href="http://stackoverflow.com" target="somename">link2</a> 
<a href="http://xkcd.com" target="somename">link3</a> 

换句话说:您依赖于使用的客户端/ web浏览器。你无法从服务器端控制它。


在Firefox例如,客户端应该检查在新的标签,而不是和两个打开新窗口当我打开一个新标签页的链接,切换到它立即选择,让您的要求上班。

alt text

(正如你看到的,最后一个是在矿井下禁用)

+0

因此,没有任何功能可以检查其他标签是否打开(只要我们知道他们正在使用标签浏览),以及这些标签指向哪些网站? – jdr120 2010-05-20 16:47:43

+0

如果您的选项卡是通过使用您要检查的选项卡中的window.open创建的,请尝试window.opener。我不认为你可以使用脚本覆盖用户的选项卡首选项。 – 2010-05-21 23:33:17

0

而是应该创建一个基于DOM的标签一个单独的文件,和iframe中指向真实页。然后,您可以在需要时轻松将“焦点”设置为正确的标签。

相关问题