2010-05-12 12 views
8

Tengo una pregunta sobre cómo los navegadores Mobile WebKit (es decir, Mobile Safari y navegador Android) manejan la función setTimeout cuando la página se vuelve inactiva y se reactiva nuevamente.Navegadores WebKit para dispositivos móviles - setTimeout y páginas inactivas

Supongamos que la página se vuelve inactiva (es decir, la pantalla del teléfono deja de funcionar/abrimos otra aplicación/abrimos otra página web) y la función setTimeout debería haberse activado antes de que la página vuelva a estar activa.

Ahora me parece que:

  1. Mobile Safari ejecuta la función en cuanto la página se activa
  2. navegador de Android:
    • puede ejecutar la función de la forma habitual (es decir JavaScript continúa ejecutándose incluso si la página está inactiva)
    • puede ejecutarse tan pronto como se active la página (a la Mobile Safari)
    • might No ejecute en absoluto

Me preguntaba si alguien sabe las "reglas" exactas?

Respuesta

1

De acuerdo con la siguiente pregunta, Android simplemente pausa el tiempo de ejecución, y continúa exactamente donde lo dejó cuando el navegador se pone en primer plano.

Android browser javascript events when minimised

ligeramente diferente a lo que ha dicho acerca de Mobile Safari, pero parece como un mejor enfoque en mi humilde opinión.

Cuestiones relacionadas