我在Chrome中返回确认时遇到问题。在Firefox中没关系。
window.onbeforeunload = function() {
var result = confirm('Really?');
if(result) {
console.log('Do something');
}
}
有什么想法吗? 谢谢!
答案 0 :(得分:5)
您应该从beforeunload
返回一些内容。
confirm
将被忽略
自2011年5月25日起,HTML5规范声明要调用 window.showModalDialog(),window.alert(),window.confirm()和 在此事件期间可能会忽略window.prompt()方法。
window.onbeforeunload = function() {
return 'Date will be lost: are you sure?'; //<= here
}
如果你没有返回某些东西,处理程序函数中的动作将在页面卸载之前执行。
答案 1 :(得分:1)
当用户试图离开页面时,您无法使用对话框(在某些浏览器中)。否则你可以直接发出警报。