Preciso avisar os usuários sobre alterações não salvas antes de deixarem uma página (um problema bastante comum).
window.onbeforeunload=handler
Isso funciona, mas gera uma caixa de diálogo padrão com uma mensagem padrão irritante que envolve meu próprio texto. Eu preciso substituir completamente a mensagem padrão, para que meu texto seja claro ou (melhor ainda) substituir toda a caixa de diálogo por uma caixa de diálogo modal usando jQuery.
Até agora, falhei e não encontrei mais ninguém que pareça ter uma resposta. Isso é possível?
Javascript na minha página:
<script type="text/javascript">
window.onbeforeunload=closeIt;
</script>
A função closeIt ():
function closeIt()
{
if (changes == "true" || files == "true")
{
return "Here you can append a custom message to the default dialog.";
}
}
Usando jQuery e jqModal, tentei esse tipo de coisa (usando um diálogo de confirmação personalizado):
$(window).beforeunload(function() {
confirm('new message: ' + this.href + ' !', this.href);
return false;
});
o que também não funciona - não consigo vincular o evento beforeunload.