我的网页上有一个javascript编辑器,我想询问用户是否想要离开页面,即使有未保存的更改。
我知道我可以通过这种方式向“onbeforeunload”对话框添加自定义消息:
window.onbeforeunload = function() {
return 'You have unsaved changes!';
}
(Source)但我想只在确实存在一些未保存的更改的情况下显示对话框。怎么做?
谢谢!
答案 0 :(得分:8)
您可以这样做:
var unsavedChanges = false;
window.onbeforeunload = function() {
if (unsavedChanges) return 'You have unsaved changes!';
}
function makeSomeChange() {
// do some changes....
unsavedChanges = true;
}
您可以确保更改“更改”事件处理程序中的unsavedChanges
。