Necesito advertir a los usuarios sobre los cambios no guardados antes de que abandonen una página (un problema bastante común).
window.onbeforeunload=handler
Esto funciona pero genera un diálogo predeterminado con un mensaje estándar irritante que envuelve mi propio texto. Necesito reemplazar completamente el mensaje estándar, por lo que mi texto es claro, o (aún mejor) reemplazar todo el diálogo con un diálogo modal usando jQuery.
Hasta ahora he fallado y no he encontrado a nadie más que parezca tener una respuesta. ¿Es posible?
Javascript en mi página:
<script type="text/javascript">
window.onbeforeunload=closeIt;
</script>
La función closeIt ():
function closeIt()
{
if (changes == "true" || files == "true")
{
return "Here you can append a custom message to the default dialog.";
}
}
Usando jQuery y jqModal, he intentado este tipo de cosas (usando un diálogo de confirmación personalizado):
$(window).beforeunload(function() {
confirm('new message: ' + this.href + ' !', this.href);
return false;
});
que tampoco funciona: parece que no puedo vincularme al evento beforeunload.