我正在使用
window.onbeforeunload
来在窗口关闭时向用户显示一条消息,在Chrome和IE中该函数运行良好,但在Firefox中不起作用。我使用的是Firefox版本 26.0
,我已经尝试了许多方法,但没有一个有效。有人在这个帖子中说这是Firefox的bug,另一个提供了一些解决方案,如这个帖子所述。我已尝试所有可用的使用Javascript和jQuery的解决方案,但它们都不起作用。现在我展示一个确认对话框,但浏览器默认对话框在它之后出现,我对此感到不满意。我还尝试使用preventDefault()
来防止浏览器默认对话框的出现,但也不起作用!如果有任何解决此问题的方法,那将是很好的。这是我如何使用 window.onbeforeunload
:<script>
window.onbeforeunload = confirmWinClose();
function confirmWinClose() {
var myVar ='${isFireFox}';
if(myVar=='true'){
return confirm(confirmExamClose);
}else{
return confirmExamClose;
}
}
<script>
注意:isFireFox
是一个我用来了解浏览器类型的jsp变量,使用User-Agent
头和confirmExamClose
是我向用户显示的消息。