在JavaScript中返回确认

时间:2013-01-03 12:32:46

标签: javascript onbeforeunload confirm

我在Chrome中返回确认时遇到问题。在Firefox中没关系。

window.onbeforeunload = function() {
    var result = confirm('Really?');

    if(result) {
        console.log('Do something');
    }
}

有什么想法吗? 谢谢!

2 个答案:

答案 0 :(得分:5)

您应该从beforeunload返回一些内容。

confirm将被忽略

  

自2011年5月25日起,HTML5规范声明要调用   window.showModalDialog(),window.alert(),window.confirm()和   在此事件期间可能会忽略window.prompt()方法。

see MDN

window.onbeforeunload = function() {
    return 'Date will be lost: are you sure?'; //<= here
}

如果你没有返回某些东西,处理程序函数中的动作将在页面卸载之前执行。

答案 1 :(得分:1)

当用户试图离开页面时,您无法使用对话框(在某些浏览器中)。否则你可以直接发出警报。