2012-04-02 15 views
24

función de descarga en jQuery funciona bien en Firefox pero no en Chrome y safari. por favor revisa este violín en Chrome y Firefox. http://jsfiddle.net/jeevankk/Gywnw/2/. Alerta un mensaje cuando la página se actualiza.¿Por qué la descarga de jQuery no funciona en Chrome y Safari?

$(window).unload(function() { 
     alert("Unload"); 
});​ 
+2

posible duplicado de [window.onunload no está funcionando correctamente en el navegador Chrome. ¿Alguien puede ayudarme?] (Http://stackoverflow.com/questions/7794301/window-onunload-is-not-working-properly-in-chrome-browser-can-any-one-help-me) –

+4

diálogos se bloquean/evitan durante "beforeunload" (con excepción del aviso previo a la descarga) y eventos de "descarga". revisa tu consola, lo dice todo. – Joseph

+0

@Joseph tienes razón. ese fue el problema – Jeevan

Respuesta

18

encontré El comentario de José como la respuesta correcta, publicando esta respuesta.

Los cuadros de diálogo se bloquean/evitan durante los eventos "beforeunload" (con excepción de la solicitud previa a la descarga) y "download". Se puede confirmar al verificar tu consola.

+1

esto realmente no parece ser la respuesta correcta a esta pregunta ... –

6

Esto es debido a que el evento de descarga no es parte de ningún estándar

https://developer.mozilla.org/en/DOM/window.onunload

verificación de la parte inferior de la página que acaba de enlazar.

+0

Ok, ¿hay alguna forma de encontrar una pestaña en Chrome y Safari? – Jeevan

+0

Lo siento, no estoy seguro de si hay una forma constante de hacerlo, pero en la pregunta duplicada @David señaló que había una sugerencia de que podrían usar el evento pagehide http://stackoverflow.com/a/9909822/199111 Los diálogos – Robert

18

Esto debería funcionar para mostrar una confirmación cuando los usuarios se van, esto tampoco es parte de ningún estándar.

$(window).on('beforeunload ',function() { 
    return 'Are you sure ?'; 
}); 
2

la función de descarga de jQuery tiene algún problema con browsers..refer el siguiente enlace http://bugs.jquery.com/ticket/5538

puede dar más detalles sobre el problema para que podamos encontrar algún trabajo alrededor ??

+0

se bloquean/evitan durante los eventos "beforeunload" (con excepción del aviso previo a la descarga) y "download". revisa tu consola, dice que todo lo que Joseph tenía razón. – Jeevan

1

puede utilizar onfocusout en el cuerpo .. pero no lo recomendaría si usted está tratando de usar algo como una alerta, en esta operación, pidiendo al usuario que no deje a su página ..

5

La descarga de jQuery también funciona bien en Chrome, con la excepción de que Chrome no permite alertas dentro de ella. Lo he usado para establecer cookies. Y si funciona con Chrome espero que también funcione en Safari.

0

"actualización" acción en el Firefox no se dispara el evento unload.

Deberíamos usar onbeforeunload en su lugar.

Confirmar con Firefox versión 47, Mac OS X

Cuestiones relacionadas