Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   замедляется setInterval при переходе на другую вкладку (https://javascript.ru/forum/dom-window/76248-zamedlyaetsya-setinterval-pri-perekhode-na-druguyu-vkladku.html)

mazahaler 17.12.2018 19:48

замедляется setInterval при переходе на другую вкладку
 
Здравствуйте, мне нужно сделать прогресс бар(точнее наоборот).
Я сделал вот так, и это работает (это Vue)
currTime: 100,

                timer : setInterval( () =>{
                    this.currTime-=0.1;
                    if(this.currTime===0.0){
                        clearInterval(this.timer);
                    }
                }, 10),


Но при переходе на другую вкладку setInterval замедляется раз в 100, при возвращении - снова работает с нормальной скоростью.
Можно ли это пофиксить? Если нельзя то как еще можно реализовать прогрессбар(чтобы он работал с одинаковой скоростью при переключении между вкладками)?

Aetae 17.12.2018 20:07

Если нужно чтоб именно setInterval чётко работал на фоновой вкладке - решение одно: webworker.
Однако если нужен некий таймер - решение иное: привязка к Date и точная оценка прошедшего времени при каждой итерации, независимо от того сколько оная заняла.

mazahaler 17.12.2018 20:12

Спасибо


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