在我的脚本中,我需要执行window.close();
,但是它有可能失败(注意:请参见下文以进行解释),因此我想跟进{{1} }
window.close();
,可以将用户重定向到页面并重定向到正确的网络流。
我尝试了以下方法:
代码1
window.history.back()
以上内容一直有效,但是如果我这样做:
代码2
window.close();
window.history.back();
警告窗口甚至可以关闭。因此,让我想知道代码1是否可以安全使用。
所以我有以下问题:
可以安全地假设在代码1中,window.close();
alert("123");
window.history.back();
将始终在window.close()
之前运行吗?
window.history.back()
的情况下,才会调用window.close()
?如果不是,那么是否有可能检测到window.history.back()
未被呼叫的事件?这样我就可以继续执行我想要的代码
注意:
window.close()
,因此我需要在知道{{1 }}失败谢谢!
答案 0 :(得分:1)
怎么样
try {
window.close();
}
catch(err) {
window.history.back();
}
答案 1 :(得分:0)
我发现了一些here,它可以对其进行详细说明,但实际上答案是您不能。最好的办法是使用unload
和onunload
检测onbeforeunload
事件。尝试使用它们,看看会发生什么。
答案 2 :(得分:0)
您是否考虑过添加try .. catch块?
try {
window.close();
}
catch(error) {
console.error(error);
// Note - error messages will vary depending on browser
}