Autor Zpráva
tpmar
Profil
Zdravím,

titulek je trochu matoucí. Proto bych ho rád vysvětlil. Zkouším si udělat přes javascript takové stopky, jenomže nefungují jak mají. Vytvořil jsem je přes setInterval. Všechno běží jak má, jenomže jen když se nacházím na stránce. Jakmile překliknu v prohlížeči na jinou kartu, stopky se přeruší a pokračují zase až když se nacházím na stránce. Nevíte někdo, jak nastavit, aby běžely automaticky i když se na nich zronva nebudu nacházet?

Děkuji předem za rady.
Joker
Profil
tpmar:
A to ty stopky fungují tak, že se v intervalu (předpokládám 1 sekunda) zvyšuje číslo? To stejně nebude přesné, protože to spouštění intervalů není tak přesné.

Když si stopky uloží čas začátku a v intervalu vypočítají rozdíl oproti aktuálnímu času, mělo by to fungovat.
Chamurappi
Profil
Reaguji na tpmara:
Prohlížeče omezují rychlost setIntervalu v neaktivních oknech na jedno volání za sekundu. S tím nehneš. Uprav svůj skript tak, aby mu to nevadilo.
Správně bys neměl spoléhat na jakoukoliv konkrétní rychlost setIntervalu. Potřebuješ-li přesně odměřovat čas, synchronizuj se raději s new Date().
tpmar
Profil
Joker:
Ano funguje to na základě zvyšování čísel. Takže navrhujete, aby se každou sekundu dělal rozdíl aktuálního času s mými stopkami?

Chamurappi:
Aha. Přesně to jsem potřeboval vědět! :) Trochu jsem si nebyl jistý, čím to mohlo být. Takhle s tím aspoň můžu počítat do příště :)
Nechápu, jak tu synchronizaci teď myslíte. Mohl by jste mi prosím Vás trochu poradit? Děkuji


Tak už tuším, jak na to.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: