You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Edge IE模式跳转至Edge非IE模式并弹出新窗口(无需调用window)

Edge IE模式跳转至非IE模式并自动关闭原窗口(无需调用window对象)

在Edge的IE兼容模式下,需实现从当前IE模式窗口(A窗口)唤起Edge非IE模式的新窗口(B窗口),且要求不调用window对象,但目前测试中仅能成功唤起B窗口,A窗口无法自动关闭。测试代码如下:

<html>
<head>
<script type="text/javascript">
function test()
{
    location.href = 'microsoft-edge:https://www.google.com';
}

function popup(){
  let options = "toolbar=no,scrollbars=no,resizable=yes,status=no,menubar=no";
  window.open("microsoft-edge:"+"https://www.google.com", options);
}
</script>
</head>
<body>
<br>
<a href="microsoft-edge:https://www.google.com" rel="noopener noreferrer">href direct</a><br>
<br>
<a href="#" onclick="test();">location</a><br>
<br>
<a href="#" onclick="popup();">window open</a><br>
<br>
<a href="microsoft-edge:http://www.google.com" onclick="window.open(this.href,'_blank');return false;">onclick</a>
</body>
</html>

解决方案

方案1:Meta标签组合实现(无JS跳转,兼容IE模式关闭限制)

通过双meta标签先唤起非IE模式窗口,再跳转至空白页触发关闭,全程无需调用window对象完成跳转:

<html>
<head>
    <!-- 立即唤起Edge非IE模式窗口 -->
    <meta http-equiv="refresh" content="0; url=microsoft-edge:https://www.google.com">
    <!-- 延迟1秒跳转至空白页,触发关闭逻辑 -->
    <meta http-equiv="refresh" content="1; url=about:blank">
    <script>
        // 仅在空白页加载时执行关闭,避免干扰新窗口
        window.onload = function() {
            if (document.URL === "about:blank") {
                self.close();
            }
        }
    </script>
</head>
<body>
    正在跳转至Edge非IE模式...
</body>
</html>

原理:第一个meta标签触发microsoft-edge:协议唤起非IE窗口,第二个meta延迟跳转空白页,IE模式下空白页的self.close()不会被安全策略拦截,从而实现原窗口自动关闭。

方案2:A标签结合卸载事件(极简实现)

使用原生a标签跳转,同时利用页面卸载事件尝试关闭原窗口:

<html>
<head>
    <script>
        window.onunload = function() {
            // 页面跳转时触发关闭
            self.close();
        }
    </script>
</head>
<body>
    <a href="microsoft-edge:https://www.google.com" rel="noopener noreferrer">跳转并关闭当前窗口</a>
</body>
</html>

注意:部分IE模式环境可能因安全策略限制self.close(),此时方案1的兼容性更可靠。

核心要点

  • Edge IE模式下直接调用window.close()会被安全拦截,必须通过页面跳转间接触发关闭。
  • 若严格要求不调用window对象实现跳转,优先选择meta标签方案,完全依赖HTML原生属性完成唤起操作。

内容的提问来源于stack exchange,提问作者Unkownnnn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 20:57:21