1

我在使用 javascript 进行浏览器窗口管理时遇到问题。我的概念证明申请中有两页。第一页包含登录信息(用户名、密码、登录按钮等),第二页是管理屏幕。我需要当用户按下登录屏幕上的登录按钮时,它会打开到主屏幕,并且主屏幕必须在没有全屏的情况下打开新窗口。我的意思是关闭、最小化、最大化按钮和 windows 操作系统的底部栏必须留在屏幕上。

在登录屏幕上打开新窗口期间,它必须自动关闭。我找到了许多示例脚本,但每个脚本都给我相同的结果。

例如; 以下脚本解决了我的问题,但同样的问题对我来说仍然存在,

firefox 不会自行关闭开启器窗口,即 6.0 关闭开启器窗口 - 它正在工作,即 7.0 - 8.0 在关闭之前它会自行询问“您正在查看的网页正在尝试关闭窗口”。

          window.open("Content/StartPage.aspx", windowName, "menubar=0, location=0, resizable=1, status=1, width=" + screen.width + ",height=" + screen.height);
        if (window.name != windowName) {
            var me = window.self;
            me.opener = window.self;
            me.close();
        }

如何在不询问浏览器问题的情况下打开新窗口并关闭具有上述要求的开启器?

谢谢你。

4

2 回答 2

4

你不能根据浏览器的安全保证来做,有些动作不允许在没有用户干预的情况下直接通过javascript进行管理。

于 2009-06-11T07:10:22.760 回答
-1

在你的新窗​​口中尝试这样的事情,在 body onload 上:

function closeParent()
{ 
    try
    { 
        var op = window.opener; 
        op.opener = self; 
        op.close();              
    } 
    catch(er) {} 
}

尽管如此,这个解决方案并不完美,我只让它在 Internet Explorer 中工作,即使这样,我还是收到了一个警告弹出窗口来关闭父窗口。这可能是无法切实解决的问题。

于 2009-06-12T17:28:12.087 回答