Браузеры Mobile WebKit - setTimeout и неактивные страницы - PullRequest
8 голосов
/ 12 мая 2010

У меня есть вопрос относительно того, как браузеры Mobile WebKit (т.е. браузер Mobile Safari и Android) обрабатывают функцию setTimeout, когда страница становится неактивной и снова активируется.

Давайте предположим, что страница становится неактивной (то есть экран телефона переходит в «спящий режим» / мы открываем другое приложение / мы открываем другую веб-страницу), и функция setTimeout должна была быть активирована до того, как страница снова станет активной.

Теперь мне кажется, что:

  1. Mobile Safari выполняет функцию, как только страница активируется
  2. Браузер Android:
    • может выполнять функцию как обычно (т. Е. JavaScript продолжает работать, даже если страница неактивна)
    • может выполняться, как только страница активирована (а-ля Mobile Safari)
    • может вообще не выполняться

Мне было интересно, знает ли кто-нибудь точные "правила"?

1 Ответ

1 голос
/ 13 февраля 2011

Согласно следующему вопросу, Android просто приостанавливает время выполнения и продолжает работу именно там, где остановился, когда браузер выводится на передний план.

События JavaScript в браузере Android при сворачивании

Немного отличается от того, что вы сказали о Mobile Safari, но, похоже, лучше подходит imho.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...