【问题标题】:js save data on page unload does not work as expectedjs 在页面卸载时保存数据无法按预期工作
【发布时间】:2021-09-04 03:14:43
【问题描述】:

我试图在页面卸载时保存一些数据,这是我当前的脚本

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 中重置网页),我不知道为什么会发生这种情况,非常感谢任何帮助

【问题讨论】:

    标签: javascript database save onbeforeunload onunload


    【解决方案1】:

    创建一个函数并命名它saveData()

    function saveData(){
       // your code to save the data
    }
    

    在 Body html 标记处放置 onunload="saveData()" 示例:

    <body onunload="saveData()">
    

    【讨论】:

    • 好的,所以我知道我将您的答案标记为正确,但我只是注意到它在谷歌浏览器中不起作用(从我发现它与其他浏览器不一样)是否有修复或者解决这个问题的方法?
    猜你喜欢
    • 1970-01-01
    • 2021-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-10
    • 1970-01-01
    • 2012-12-26
    • 1970-01-01
    相关资源
    最近更新 更多