单击来自其他窗口的链接时,激活打开的窗口选项卡

时间:2017-08-22 11:26:57

标签: javascript jquery html windows tabs

我想知道当我点击其他窗口的链接时是否可以激活打开的窗口选项卡。

e.g。我点击网站A的_blank链接,打开网站B的新窗口。现在,通常如果我想从网站B返回网站A,我必须关闭网站B或寻找网站A手动

是否可以在网站B中创建一个链接来激活已经打开的网站A?

2 个答案:

答案 0 :(得分:0)

由于明显的安全原因,这是不可能的:D

如果您在此上下文中将标签引用为窗口,则可以尝试将网站弹出为新窗口并在其上调用focus()

yourPopupName.focus();

可以专注于弹出的窗口。

参考How to change browser focus from one tab to another

答案 1 :(得分:0)

理论上它是不可能的,但也许这可行:

基本上,因为它是同一个网站,你可以在tabB中的本地存储中存储一个变量,就像你需要回到tabA一样:

localStorage['update'] = true

然后在tabA上按照你的例子打开tabB,你可以设置一个间隔来检查它是否必须更新或者使用setInterval函数。

setInterval(function(){
     if (localStorage['update'] == true){
       localStorage['update'] = false;
       $.get(location.href, function(){window.open(location.href)}, 'html');

       window.opener = window;
       window.close(); 
     }
}, 5000);

所以这将基本检查每5秒钟是否必须更新,如果是,那么它将更新设置为假或者它将继续刷新页面,然后它打开一个新的并关闭它将迫使浏览器集中注意力在新标签上。

它并不完全是你想要达到的目标,但它与js一样接近。

如果您不想刷新而不是$ .get(...您可以发出警告,以便标签的标题为粗体,以便用户知道那里发生了什么。

我还没有测试过这个,但你明白了。