我有一个window.onbeforeunload
生成默认消息的函数:
“您确定要离开此页面吗……”。
如果我们单击,OK我们将被重定向到一个新链接,如果我们按下cancel,我们将被重定向回同一页面。
OK 当我们按下并离开页面时,我想从页面中保存一些数据。我们如何知道是否OK或cancel已被按下,然后进行事件调用并继续使用“ok”/“cancel”选项。
我有一个window.onbeforeunload
生成默认消息的函数:
“您确定要离开此页面吗……”。
如果我们单击,OK我们将被重定向到一个新链接,如果我们按下cancel,我们将被重定向回同一页面。
OK 当我们按下并离开页面时,我想从页面中保存一些数据。我们如何知道是否OK或cancel已被按下,然后进行事件调用并继续使用“ok”/“cancel”选项。
function leavePage() {
//do your thing like saving the data in the session
return "Some data entered may be lost."; //a text needs to be returned
}
window.onbeforeunload = leavePage;
一种可能的方法也可能是挂钩onunload
事件,如果调用该处理程序,您就知道用户选择了OK
.
在onbeforeunload
中,设置一个超时回调,该回调在一段时间后(例如 1 秒)被调用,如果被调用,用户可能选择了Cancel
。
不过,不确定这对于比赛条件有多安全。
你在使用 JavaScript 的“确认”对话框吗?
if(confirm("Are you sure you want to navigate away from this page....")) {
// OK was pressed
} else {
// Cancel was pressed
}