如何使用JavaScript打开新的选项卡/窗口?

时间:2012-01-25 00:06:58

标签: javascript

目的

我想在新标签/窗口中以 EXACT 的方式在target =“_ blank”中打开一个网址。

代码

我正在使用PHP条件触发以下JavaScript:

<script type="text/javascript">
window.open ("http://www.google.com/","_blank", "status=1,toolbar=1");
</script>

我的问题

window.open与不相同作为target =“_ blank”超链接。

  1. 它提出了弹出窗口阻止程序的问题。
  2. 窗口要求参数看起来像target =“_ blank”会产生什么。
  3. JavaScript运行后,包含文档的某些字体颜色将丢失。
  4. 我的问题

    如何完全模拟target =“_ blank”产生的内容?

1 个答案:

答案 0 :(得分:1)

不使用JavaScript打开Window,而是使用JavaScript更新链接的href,然后触发链接上的点击。这样,您将获得与用户单击链接完全相同的行为。

使用ID和target="_blank"添加指向您网页的链接。如果要打开新窗口,请更新此链接的href,然后触发点击,如下所示(来自here)。

function clickLink(link) {
var cancelled = false;

if (document.createEvent) {
    var event = document.createEvent("MouseEvents");
    event.initMouseEvent("click", true, true, window,
        0, 0, 0, 0, 0,
        false, false, false, false,
        0, null);
    cancelled = !link.dispatchEvent(event);
}
else if (link.fireEvent) {
    cancelled = !link.fireEvent("onclick");
}

if (!cancelled) {
    window.location = link.href;
}
}