关闭已更换的窗口

时间:2014-11-03 20:05:13

标签: javascript

我需要一种方法来制作一个"退出"按钮。我有一个重定向页面,使用_self打开一个带有JavaScript的新窗口,因此它取代了窗口。我需要做的下一件事是使用JavaScript关闭该窗口。

现在,我想问题是,由于页面被替换,它不记得它是由JavaScript打开的,所以它不能被关闭。可以使用任何其他语言完成吗?

1 个答案:

答案 0 :(得分:0)

好的,有人告诉我,javascript只能关闭一个窗口,如果那个窗口记得它是由javascript打开的......或类似的东西。

好吧,我可能刚刚发现了一个漏洞:

    <div style="width: 128px; height: 32px; background-color:green;" onclick="doStuff()">Click me</div>


    <script>

        function doStuff()
        {
            var myWindow = window.open("", "_self");
            myWindow.document.write("This page will close in 3 seconds, for real...\<script\> setTimeout(function() { window.close(); }, 3000);\<\/script\>");
        }        

    </script>

你看到我刚刚在那里做了什么,我发送了一段代码到新打开的页面,新页面运行它(至少在我的chrome上)。因此,在脚本标记之间,您可以生成一个按钮或关闭文档的内容(而不是超时函数)。