2011-01-06 30 views
6

Tengo un evento onbeforeunload funcionando que muestra un cuadro de diálogo que advierte a los usuarios sobre los cambios no guardados en un formulario cuando navegan.Personalizar el cuadro de diálogo onbeforeunload

window.onbeforeunload = function() { 
    return 'You have unsaved changes.'; 
}; 

¿Cómo personalizo el cuadro de diálogo que aparece para que sea un poco más fácil de usar. En este momento es más difícil de manejar:

"¿Está seguro que desea salir de esta página

Tienes cambios sin guardar

Pulse OK para continuar o Cancelar para permanecer en la página actual?.. "

Noto que Stack Overflow tiene uno que es mucho más limpio: "Ha comenzado a escribir o editar una publicación" y los botones dicen "Permanezca en esta página", "Deje esta página" en lugar de un "Cancelar" genérico y "OK". ¿Cómo puedo hacer eso?

Estoy usando jQuery, si eso es necesario para la solución.

Respuesta

5

Los navegadores no permiten personalizar esta caja en absoluto. La única razón por la que se verá diferente en SO es porque estaba usando un navegador diferente cuando accedió. Google Chrome usa los botones etiquetados 'Permanecer en esta página' y 'Salir de esta página'. Según el texto de ejemplo que publicó, parece que ha probado su controlador onbeforeunload con Internet Explorer.

+1

Ah, tienes razón. Estoy tan acostumbrado a tener Chrome en un monitor y Firefox en el otro que me extrañé por completo. Un punto más a Chrome en este caso. – keithjgrant

+0

¿Alguna actualización más reciente sobre cambio de etiqueta? por favor, manténme informado. – Karthik

Cuestiones relacionadas