问题描述
我正在尝试在页面卸载时保存一些数据,这是我当前的脚本
window.addEventListener("unload",function(event) {
if(snippetChanged){
//save it
snippetChanged = false
var changeData = {
code: CryptoJS.AES.encrypt(snippetEditor.getValue(),'key').toString(),name: path[0]
}
var xmlHttp = new XMLHttpRequest();
xmlHttp.open('POST','/userhome/updateSnippet',true);
xmlHttp.send(JSON.stringify(changeData));
}
})
但是这只能部分起作用(在firefox中重置网页),我不知道为什么会发生这种情况,非常感谢任何帮助
解决方法
创建一个函数并命名它saveData()
function saveData(){
// your code to save the data
}
在 Body html 标签处放置 onunload="saveData()" 例子:
<body onunload="saveData()">