项目中遇到了下面这个问题,请教大家。
大家都知道,window.open的第二个参数name用来指定打开窗口的窗口名,可以控制是否使用一个新的IE进行popup。
我的测试步骤如下:
1、打开openIE.html,点击页面上的Button,弹出subwindow.html。(我的name是一个定值)
2、重复点击页面上的Button,弹出的IE会取代之前的IE。
3、刚才弹出的subwindow.html不关,把openIE.html关闭,然后再把它打开。
4、点击页面上的Button。
第四步中,问题来了。
如果是XP或2000系统中,刚才弹出subwindow.html依旧会被冲掉,原地刷新。
而在VISTA中,刚才弹出的subwindow.html会被无视,window.open会产生一个新的subwindow.html的IE出来。
我想要的效果是XP或2000中的效果,也就是“无论父画面关闭与否,只存在要指定的name的窗体,window.open都可以把它冲掉”。请高人指点啦

解决方案 »

  1.   

    贴上2个文件的代码。
    openIE.html:
    <html>
    <head>
        <title>parent</title>
        <script type="text/javascript">
            function openWin()
            {
                var name = "mygoogle";
                window.open("subwindow.html",name);
            }
        </script>
    </head>
    <body>
        <form>
            <input type="button" onclick="openWin();" />
        </form>
    </body>
    </html>subwindow.html:
    <html>
    <head>
        <title>child</title>
    </head>
    <body>
        subwindow
    </body>
    </html>
      

  2.   

    但是这个实现方法在非Vista系统中是好用的。