我有一个activestatus var告诉是否保存到文件,如果没有保存文件activestatus将是真的,如果用户按下浏览器或尝试键入不同的URL并且他应该弹出说"您还没有保存要保存的更改?是否"。
这是我到目前为止所尝试的内容
var activeInput=true;
window.onbeforeunload =checkNow;
function checkNow(){
if(activeInput==true){
alert('please save your changes');
return "Do you want to leave?"
}else{
alert('gonow');
return true;
}
}
基本上我只想在用户想要离开窗口并且没有保存到文件时调用函数。
答案 0 :(得分:2)
尝试使用addEventListener
,并使用e.returnValue
来显示消息。
var activeInput=true;
window.addEventListener('beforeunload', checkNow);
function checkNow(e) {
if (activeInput === false) return true;
var message = "Are you sure you want to leave this page? Ensure you save any changes.";
e.returnValue = message;
return message;
}