1

此页面作为文件存在于目标框架 3.5 的 ASP.NET 应用程序中。

我在我的网站上遇到了一个错误(昨天首次报告),这与在 IE8 或 IE9 上安装了 Chrome Frame 的用户有关,他们点击了打开新窗口的链接。子页面打开,但是当子窗口关闭(或有时之前)时,父窗口崩溃。(屏幕完全是灰色的)。

复制此问题的测试代码如下,但我不知道发生了什么或如何解决它。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta http-equiv="X-UA-Compatible" content="chrome=1" />

    <title></title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="description" content="" />
    <meta name="author" content="" />
</head>
<body>
    <button id="open-link">Hi</button>

    <script>
        var a = document.getElementById("open-link");
        a.addEventListener("click", function () {
            window.open("http://google.com", "Browser");
        }, false); 
    </script>
</body>
</html>
4

2 回答 2

2

我在不同的平台上看到了同样的问题,所以它不是 ASP.net。如果您使用的是 Chrome Frame,请使用 window.open 打开另一个窗口,然后关闭该窗口,它会使剩余的选项卡/窗口崩溃。如果您打开的窗口不在同域策略范围内,则它会在打开而不是关闭时使打开的选项卡崩溃。

我还没有解决方法或解决方案,如果我找到了会发布。

于 2013-01-29T22:35:47.040 回答
1

可以使用普通的锚链接,你说它是动态生成的。

将动态 url 设置为视图中的标签或全局命名空间中的变量。

var dynamicUrl = {{myUrl}},
    urlTitle = {{myUrl.title}}; // Or whatever construct is generating.

HTML

<a href="dynamicUrl" target="_blank" alt="urlTitle">Hi</a>
于 2013-01-24T00:04:30.113 回答