1
我需要有一种方法做“留”以下:导航到其他页面时,用户点击beforeunload
- 当用户点击退出窗口,应该问他们是否想留或离开
- 如果用户点击留下来,应该引导他们到一个新的页面
- 如果用户点击离开,窗口应关闭
目前,我有以下代码:
var timeout;
$(window).on('beforeunload', function(){
timeout = setTimeout(function() {
alert('You stayed');
window.location.href = 'desktop/salvage';
}, 1000);
return "You save some unsaved data, Do you want to leave?";
});
function noTimeout() {
alert("You're leaving!");
clearTimeout(timeout);
}
window.unload = noTimeout;
警报运行正常,但是如果用户单击停留,则尝试导航到另一个页面时会再次运行beforeonload并再次提示您。在您决定离开页面之前,这会陷入无限循环,如果您选择“停留”,则会导航到您应该导航到的页面。
这完美地工作,谢谢! – Linx