在JavaScript中执行beforeunload事件并弹出警告框时,是否可以获取点击按钮的信息?
答案 0 :(得分:1)
您不能直接执行此操作,因为onbeforeunload
要求浏览器创建对话框并且不会告诉您返回值,但您可以使用您在事件中设置的全局变量例如,通过setInterval
进行检查。
var confirmUnload = false;
window.addEventListener("beforeunload", function(event) {
confirmUnload = true;
event.returnValue = "Really leave?";
});
window.addEventListener("unload", function(event) {
console.log("User left");
});
setInterval(function(){
if(confirmUnload) {
confirmUnload = false;
setTimeout(function() {
console.log('Still here');
}, 500);
}
}, 400);