Javascript 为什么FireFox window.onbeforeunload()仅在显示确认对话框时才会启动?

Javascript 为什么FireFox window.onbeforeunload()仅在显示确认对话框时才会启动?,javascript,firefox,onbeforeunload,Javascript,Firefox,Onbeforeunload,如果我为“onbeforeunload”注册侦听器,则仅当显示确认对话框时,才会记录控制台输出 //工作 window.onbeforeunload = function(e) { console.log('onbeforeunload'); return 'a string'; } 但是,删除返回“字符串”;并且不会显示console语句 //失败 window.onbeforeunload = function(e) { console.log('onbefor

如果我为“onbeforeunload”注册侦听器,则仅当显示确认对话框时,才会记录控制台输出

//工作

window.onbeforeunload = function(e) { 
    console.log('onbeforeunload');
    return 'a string';
}
但是,删除返回“字符串”;并且不会显示console语句

//失败

window.onbeforeunload = function(e) { 
    console.log('onbeforeunload');
}
如何在不向用户显示确认对话框的情况下记录发生的事件?这在Chrome中起作用。

字符串总是被记录,只是在没有确认对话框的情况下,浏览器导航到新页面或重新加载并清除日志


您可以使用Enable persistent logs设置来保留消息:

您确定Firefox不仅仅是在加载下一页时清除控制台吗?留着它。我对Firefox不太确定,我很少使用它。