在modalDialog中使用window.open - 地址栏始终可见?

时间:2011-09-30 11:14:54

标签: javascript modal-dialog window.open

(在IE9中已经观察到此问题)

在modalDialog中打开新窗口时,我遇到了与地址栏显示有关的一些问题。

以下示例页面说明了这一点。

的test.html:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html>
    <head>
        <title>Test</title>
        <script type="text/javascript">
            function windowOpen()
            {
                var sOptions = "width=300,height=300,location=0,menubar=0,toolbar=0,status=0";
                window.open("test.html", "", sOptions);
            }

            function modal()
            {
                var sOptions = "dialogHeight:300px;dialogWidth:300px;";
                window.showModalDialog("test.html", "", sOptions);
            }
        </script>    
    </head>
    <body>
        <a href="javascript:void(0);" onclick="modal()">window.showModalDialog</a><br /><br />
        <a href="javascript:void(0);" onclick="windowOpen()">window.open</a>
    </body>
    </html>

单击页面上的“window.open”链接可以正常工作,并隐藏地址栏。如果在生成的新窗口中再次单击该链接,它仍会按预期执行。

但是,如果您在任何时候在modalDialog中打开页面(使用window.showModalDialog链接),然后单击“window.open”,地址栏就会显示。

有没有办法避免这种行为?

任何帮助将不胜感激。

0 个答案:

没有答案