Timer zwalnia po minimalizacji okna

0

Mam taki timer w JS co ma odliczac dni,godz,min,sek, wiadomo
wsadzilem tu

https://jsfiddle.net/xmowdp47/17/

i teraz temat
jest taki owieram sobie to w kilku przegladarkach na roznych kompach
na telefonie. i jak zminimalizuje okienko i po 20 sekundach otworze to mam roznice czasu
10 skund. Co jest nie tak?

0

Te 1000 ms oznaczają że po upływie 1000 ms w najbliższym możliwym czasie wykonaj ...
Lepiej sprawdzaj 5 razy na sekundę, ale uwzględniaj realny czas.

0

dziekuje za odpowiedz ale co mam wywalic te 1000 ms czy co powinienem zrobic ? nie za bardzo sie znam na JS

0
masterO napisał(a):

dziekuje za odpowiedz ale co mam wywalic te 1000 ms czy co powinienem zrobic ? nie za bardzo sie znam na JS

Stwórz sobie zmienną z datą końca odliczania i z każdym wywołaniem setInterval odejmuj od obecnej daty, datę końca odliczania i dopiero na podstawie tej liczby oblicz czas.

Poza tym jak napisał @_13th_Dragon setInterval nie gwarantuje, że kod wykona się co 1000ms a jedynie, że komputer będzie się starał wykonać to co 1000ms. W praktyce jest to zawsze kilka ms więcej. Do tego przeglądarki dla nieaktywnych kart w przeglądarce zwiększają minimalny czas setInterval. Np. w przypadku Chrome dla nieaktywnych kart minimalny czas setInterval zwiększa się do 1000ms a do tego, te karty mają najniższy możliwy priorytet dla procesora więc w praktyce, może to być nawet 1100ms albo i więcej.

https://github.com/adobe/chromium/blob/master/webkit/glue/webkit_constants.h#L18

1 użytkowników online, w tym zalogowanych: 0, gości: 1