2011-10-11 13 views

Respuesta

3

No hay ninguna forma de navegador cruzado de hacer esto.

Sin embargo, IE tiene un evento especial, onstop que se produce en el body cuando se presiona el botón de parada. No puede anular la funcionalidad del botón de detención (es decir, no puede cancelarla), pero puede detectar que ha sucedido en IE.

4

Si se trata de imágenes que todavía se cargan en la página, puede usar el evento onabort para supervisar carga de detención.

Monitoreo para el ratón, haga clic debería ser imposible, ya que no sucede en el interior la ventana de exploración actual.

5

Internet Explorer tiene un evento document.onstop que está encendido, pero otros exploradores no parecen soportar eso. Tenga en cuenta que se activa cuando el usuario hace clic en Detener o acierta en Esc, O si el usuario navega a otra página durante la carga de la página, que tiene el mismo efecto.

No creo que haya una manera confiable de activar un evento al hacer clic en Detener en otros navegadores. Quizás sería posible hacer algo como: mantener abierta la conexión con el servidor (como en el enfoque Comet), transmitir algún tipo de conexión "keep-alive" y detectar si la transmisión finaliza (como supongo que lo haría si el Se hizo clic en el botón Detener).

+0

Gracias. Para mi caso específico, solo tengo que soportar IE, entonces onstop debería hacer el truco. – Nilzor

+0

Bueno, después de más pruebas, parece que onstop no es lo que necesito después de todo. También se dispara cuando navega fuera de su página, y solo una vez. Entonces, si la secuencia es similar a 1. Navegue lejos, 2. cancele la navegación, onstop solo dispara en el primer evento - opuesto a mi necesidad. – Nilzor

+0

Cuando navegas, eso cancela la carga de la página en la que estabas. Si luego hace clic en Detener, cancelará la carga de la nueva página. Esperaría que se dispararan dos eventos encendidos, pero para diferentes documentos. –

Cuestiones relacionadas