1

我写了一个书签来在中文字典中查找一个单词:

javascript:Qr=document.getSelection();if(!Qr){void(Qr=prompt('%E8%AF%8D%E8%AF%AD',''))};if(Qr)(function(){window.open('http://nciku.com/search/all/'+Qr);})();

这将打开一个新选项卡,其中包含您选择的单词或您在提示时键入的单词的搜索结果。有没有办法在后台加载新标签?我想将注意力集中在我正在查看的页面上,稍后再查看搜索结果。

Firefox中有一个选项“当我在新选项卡中打开链接时,立即切换到它”,这没有帮助。

编辑:请注意,这是供我使用的,因此告诉我如何更改 Firefox (3.0.11) 设置以执行此操作的答案也可以。我也尝试了以下修改,但它仍然关注新标签。

javascript:Qr=document.getSelection();if(!Qr){void(Qr=prompt('%E8%AF%8D%E8%AF%AD',''))};if(Qr)(function(){var%20oldWin=this;window.open('http://nciku.com/search/all/'+Qr);oldWin.focus()})();

编辑2:

环顾四周,看看我是否能找到答案,我看到这个人遇到了相反的问题(新标签没有获得焦点,但他希望他们拥有它),但没有解决方案:

可以从 JavaScript 在 IE7 中设置选项卡焦点

显然在 HTML 5 中讨论了一个 _tab 目标,但这对我没有多大帮助。

http://forums.whatwg.org/viewtopic.php?t=185&highlight=tab+focus

(显然作为一个新用户,我只能发布一个链接,所以我已经破坏了它)

如果这是不可能的,这似乎是非常糟糕的浏览器行为。

4

4 回答 4

4

在 FireFox 中键入 about:config 并将 browser.tabs.loadDivertedInBackground 更改为 true。这对我来说适用于浏览器书签。

来源: http: //lifehacker.com/263940/force-links-to-open-in-the-background

于 2009-08-20T15:27:02.883 回答
1

显然,这仅适用于以前打开的窗口,而不是根窗口。

使用与现有窗口相同的窗口名称调用 window.open,将 URL 加载到该窗口中并返回对该窗口的引用。窗口没有获得焦点,它的 opener 属性没有改变,window.open 的第三个参数被忽略。您可以使用 focus 方法手动赋予窗口焦点。

var oldWin = window.open("url.html","oldName"); 
oldWin.focus(); // give focus 
于 2009-06-28T20:30:30.353 回答
1

不,不是通过 JavaScript 以编程方式。您无法控制用户的浏览器首选项,只有他们可以控制。

此外,即使您确实可以控制它,也不应该这样做,因为它会破坏浏览器赋予您的脚本的控制权。如果用户希望在后台打开页面,他们应该能够控制它,而不是开发人员。

于 2009-06-28T20:37:49.463 回答
0

面对同样的问题,我只注意到如果你在打开窗口后才使用alert(),Firefox 不会切换到新打开的选项卡。

于 2011-04-04T13:41:07.437 回答