в iOS 6 в Safari и setInterval не уволят
Кажется, если я прокрутки window
, the window.setInterval
не подключается / запускается во время прокрутки или после. кто-нибудь еще видел ту же проблему?
Я имею в виду...
- что может быть наносят это?
- что я могу сделать, чтобы это исправить?
4 ответов
iOS останавливает почти все в ответ на прикосновение пользователя, чтобы гарантировать, что он чувствует себя отзывчивым. Проблема setInterval известна, и, похоже, нет обходного пути.
setInterval делает паузу в iphone / ipad (mobile Safari) во время прокрутки
редактировать
во время" замораживания " таймер не догонит, как только пользователь отпустит экран. Пропущенные события не откладываются, а полностью теряются (ошибка).
Я не совсем уверен, но вы могли бы использовать setTimeout
вместо setInterval
? В любом случае, использовать setInterval-плохая практика.
var delay = 100;
(function callee() {
setTimeout(callee, delay);
})();
iOS6 Safari страдает от ошибки, которая убивает таймеры, созданные во время прокрутки страницы.
существует исправление этой проблемы, предоставленное kTmnh путем воссоздания таймеров после прокрутки