Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   код беситься после пробуждения (https://javascript.ru/forum/css-html/80991-kod-besitsya-posle-probuzhdeniya.html)

Tigr 08.09.2020 21:23

код беситься после пробуждения
 
Привет.
Есть код выполняющий циклическое перелистывания картинок в окне в автоматическом режиме с интервалом 5сек.
Проблема заключается в следующем.
Когда окно не активно код останавливается (как выяснилось причина тому, браузер останавливает код JS автоматически для экономии ...), а когда возвращаешься к окну то код как взбесился листает все что пропустил.
ПРИМЕР: окно не было активное например 45сек. то есть должно было пролистаться 9 картинок, и когда ты возвращаешься к окну то все эти девять картинок пролистуються в секунду(и ето мирцание бесит) и дальше все работает нормально.
Задача.
Хочу как-то убрать это бешинство кода чтобы где остановилось там и началось или по крайней мере перескачило.
и к слову я не любитель всей этой писанины всегда как-то выкручиваюсь а тут просто никак незнаю где капнуть.

Aetae 08.09.2020 21:42

Использовать setTimeout вместо setInterval. А лучше - использовать requestAnimationFrame.

Nexus 08.09.2020 21:42

https://learn.javascript.ru/settimeout-setinterval

Tigr 13.09.2020 10:36

Спасибо.
Хоть и пришлось отредактировать код под setTimeout но он почему-то не помог срабатывал так же как setInterval и хоть тот работает по другому. А решить ситуацию мне помогло собитие visibilitychange сработало так как я и хотел. То есть вне активности окна все в ожидании, а при возврате к окну все просто продолжает работать без багов.
Инфу нашол здесь: https://developer.mozilla.org/uk/doc...торінки


Часовой пояс GMT +3, время: 20:29.