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

如何使用JavaScript打开新的选项卡/窗口? 客观的,javascript,Javascript,我想以与target=“\u blank”相同的方式在新选项卡/窗口中准确地打开URL 代码 我使用的PHP条件会触发以下JavaScript: <script type="text/javascript"> window.open ("http://www.google.com/","_blank", "status=1,toolbar=1"); </script> window.open(“http://www.google.com/“,”_blank“,”状态=

我想以与target=“\u blank”相同的方式在新选项卡/窗口中准确地打开URL

代码 我使用的PHP条件会触发以下JavaScript:

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

window.open(“http://www.google.com/“,”_blank“,”状态=1,工具栏=1“;
我的问题 window.open与target=“\u blank”超链接不同

  • 它提出了一个弹出窗口拦截器的问题
  • 窗口要求参数看起来像target=“\u blank”会产生的参数
  • 一旦JavaScript运行,包含文档的某些字体颜色将丢失
  • 我的问题
    如何准确模拟target=“\u blank”生成的内容?

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

    添加一个带有id和
    target=“\u blank”
    的页面链接。当您想打开一个新窗口时,请更新此链接的
    href
    ,然后触发一次单击,如(从)所示


    你没有。弹出窗口阻止程序每天检查一次,以确保该操作是用户启动的,否则它将阻止该操作。可能重复:@Ktash:代码需要什么才能成为“用户启动的”?模拟.click事件有意义吗?@Travis J:谢谢,但我已经看到了这个问题。这并不能解释我所概述的第一个区别。模拟点击是行不通的(至少我知道这一点)。一旦用户实际单击,您就必须触发。您将无法将代码设置为“用户启动”。除非你能“诱骗”用户点击,或移动他们的鼠标(不确定这是否有效)或其他什么。
    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;
    }
    }