首页 > web前端 > js教程 > 正文

如何在没有 Flash 的情况下从 JavaScript 在后台打开新选项卡?

Barbara Streisand
发布: 2024-11-07 14:47:02
原创
798 人浏览过

How Can I Open a New Tab in the Background from JavaScript Without a Flash?

我可以在保留当前选项卡的同时在后台打开新选项卡吗?

使用 JavaScript 时,可以打开使用以下代码在不同选项卡中创建一个新页面,同时将注意力集中在当前选项卡上:

open('http://example.com/');
focus();
登录后复制

但是,这种方法可能会导致新选项卡在切换回 Chrome 中的当前选项卡之前短暂闪烁。为了避免这个问题,需要一种更复杂的方法。

解决方案:模拟按键事件

此解决方案涉及模拟键盘上的组合键(例如 Ctrl 单击)动态生成的元素来创建背景选项卡。以下代码完成此操作:

function openNewBackgroundTab(){
    var a = document.createElement("a");
    a.href = "http://www.google.com/";
    var evt = document.createEvent("MouseEvents");
    // Simulate Ctrl key press
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0, true, false, false, false, 0, null);
    a.dispatchEvent(evt);
}
登录后复制

此方法通过创建一个 来工作。元素,将其 href 属性设置为所需的 URL,然后使用模拟的“Ctrl”键调度单击事件。这会导致打开后台选项卡而不影响当前选项卡的焦点。

以上是如何在没有 Flash 的情况下从 JavaScript 在后台打开新选项卡?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板