如果用户确认关闭当前窗口,则在当前窗口关闭时打开新的浏览器窗口

我有一个场景,如果用户试图关闭当前的浏览器窗口,那么他应该显示一个确认框。 如果他确认关闭窗口,则该窗口应该关闭并用不同的URL打开新窗口。

我尝试使用以下代码,通过它我可以显示确认框,但如果用户确认关闭当前,我无法弄清楚如何打开新窗口。

var preventUnloadPrompt; $('a').live('click', function () { preventUnloadPrompt = true; }); $('form').live('submit', function () { preventUnloadPrompt = true; }); $(window).bind("beforeunload", function () { if (preventUnloadPrompt) { return; } else { return confirm("quit??"); } }); 

任何类型的帮助表示赞赏。 谢谢。

当一个窗口关闭时,一切,绝对与该窗口相关的所有内容是否可见……等待javascript代码,屏幕上的东西等等都消失了,其中包括处于执行过程中的脚本 – poof – 去了nada,基本上取消,中止,暂停,停止任何正在运行的脚本。

时间排序要求除了关闭窗口之外,首先完成所有其他用户启动的操作。

例:

 javascript: void(window.open("data:text/html,  open & close this link does both
close & open this does close but open fails "))

链接可以用if(confirm("quit??")){ ... }进行预处理

测试用:

 window.navigator.userAgent = Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:11.0) Gecko/20100101 Firefox/11.0 

书签:
如果用户确认关闭当前窗口,则在当前窗口关闭时打开新的浏览器窗口

 var answer = confirm("quit??"); if (answer){ window.open("http://www.google.com/"); } else{ // do something else }