当前位置: 首页 > 面试题库 >

在后台打开新标签页?

班昱
2023-03-14
问题内容

我想使用Javascript在其他标签中打开新页面,但仍将重点放在当前标签上。我知道我可以这样做:

open('http://example.com/');
focus();

但是,当我在chrome中执行此操作时,它会闪烁新标签一会儿,然后再切换回当前标签。我想避免这种情况。

该应用程序是个人书签,因此仅需在最新的Chrome中运行。


问题答案:

更新:谷歌浏览器的版本41 initMouseEvent 似乎已更改行为。

这可以通过在属性属性设置为所需的动态生成元素上模拟ctrl+
click(或打开背景选项卡的任何其他键/事件组合)来完成a``href``url

行动中: jsfiddle

function openNewBackgroundTab(){
    var a = document.createElement("a");
    a.href = "http://www.google.com/";
    var evt = document.createEvent("MouseEvents");
    //the tenth parameter of initMouseEvent sets ctrl key
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0,
                                true, false, false, false, 0, null);
    a.dispatchEvent(evt);
}

仅在铬上测试



 类似资料:
  • 很好的一天。请您通过打开Chrome浏览器创建一个新选项卡,在其中执行一些操作,关闭新选项卡,然后返回第一个选项卡并继续在其中工作,来判断Selenium VBA是否可行? 我用以下代码打开浏览器:

  • 问题内容: 我有以下使用Vaadin编写的代码。当用户单击按钮时,代码将打开页面。 我的问题是我有什么办法指定要在新标签页中打开页面吗? 谢谢。 问题答案: 该窗口的名字是很重要的位置。要注意的是,你还可以有一个浏览器 将 可以在新窗口中打开资源来代替。 该方法还有另一个签名,即 可能符合要求。HTH。 参考:Page(Vaadin 7.2.1 API) 。

  • 问题内容: 因此,我试图在WebDriver内的新选项卡上打开网站。我想这样做,因为使用PhantomJS为每个网站打开一个新的WebDriver大约需要3.5秒,所以我想提高速度… 我正在使用多进程python脚本,并且我想从每个页面中获取一些元素,因此工作流程如下: 但是我找不到任何方法来实现这一目标。 这是我正在使用的代码。网站之间永远都需要花时间,我需要它很快。允许使用其他工具,但是我不知

  • 问题内容: 在chrome中,这会在新标签页中打开: 这会在新窗口中打开(但我也想在新标签页中打开它: 这可行吗? 问题答案: 您不能直接控制它,因为它是由Internet Explorer用户控制的选项。 使用Window.open使用不同的窗口名称打开页面将在新的浏览器窗口(如弹出窗口)中打开,或者在用户配置的浏览器中打开。 编辑: 更详细的解释: 1. 在现代浏览器中,window.open

  • 问题内容: 自从将近一个月以来,我一直在使用CasperJS测试框架来制作一些测试套件,但是其中之一面临着一个问题。 这是我要执行的操作:我正在浏览一个url(第1页),并且必须从另一个url(像在图形浏览器中那样模拟新选项卡)执行另一个操作,而不必退出第一个(第1页)。来自第二个URL的操作将更改我的第一个URL。希望它足够清楚:) 因此,现在,当我到达观察第一个URL的步骤时,我通过执行操作打

  • 我相信预览功能不包括这一点。我只想通过快速打开(或任何方式?)打开一个文件进行编辑,并替换活动选项卡的内容,关闭打开的文件并用新文件替换它。 这种行为对我的编辑方式至关重要。目前,我总是打开我不想要的新标签。这是代码和我15年来使用Vim的方式之间唯一的障碍。我想这是可以写成剧本的,但我希望避免走这条路。请告诉我我错过了什么。