由用户异常关闭,需要保存数据怎么处理
如题,如果用户点击窗口的XX关闭页面(异常关闭),我需要保存一些数据,目前我使用body的onbeforeunload的事件去实现jquery的ajax方法调用后台,但是ajax方法不执行(正常关闭ajax调用无异常)
请问:该如何解决类似的问题?
------解决方案--------------------
/// onbeforeunload事件
function winBeforeClose() {
//用户点击浏览器右上角关闭按钮或是按alt+F4关闭
if (event.clientX > document.body.clientWidth - 20 && event.clientY < 0 || event.altKey) {
window.event.returnValue = "提示信息";
}
//用户点击任务栏,右键关闭。s或是按alt+F4关闭
else if (event.clientY > document.body.clientHeight || event.altKey) {
window.event.returnValue = "提示信息";
}
//其他情况为刷新
else {
IsRefresh = true;
}
}
/// onunload 事件中去同步请求保存数据【注意:最好使用同步】
关键还是捕获关闭的事件,捕获不到后面的一切都没意义
------解决方案--------------------