De ce întârzie cronometrele din browser și cum rămâne un timer online exact
Un cronometru din browser este exact atunci când citește ceasul, nu când numără bătăi. Salvează ora de final în momentul în care pornește timer-ul, apoi scade ora curentă de fiecare dată când se actualizează ecranul. Bătăile pot sosi cu întârziere sau pot fi încetinite într-o filă din fundal, dar scăderea rămâne corectă în momentul în care pagina o verifică.
Timer onlineVrei un timer sau cronometru?Încearcă gratuitDe ce numărarea bătăilor duce la abatere
Un mod obișnuit de a scrie un timer este să scazi unu dintr-un contor în fiecare secundă. Browserul rulează acest pas cu un temporizator repetitiv, care cere ca o funcție să fie executată la fiecare câteva milisecunde. Browserul nu garantează o sincronizare exactă. O pagină încărcată, un dispozitiv lent sau o filă ascunsă pot întârzia fiecare bătaie, iar întârzierile se adună. Un contor care pierde câteva milisecunde la fiecare bătaie devine vizibil greșit după câteva minute.
Ce fac filele ascunse
Browserele încetinesc temporizatoarele din filele pe care nu le privești. Așa se economisesc bateria și timpul procesorului. Chrome, de exemplu, limitează cât de des rulează temporizatoarele repetitive într-o filă ascunsă, iar după ce o filă a stat ascunsă mult timp, aceste temporizatoare pot rula mult mai rar. Un contor din astfel de filă rămâne în urmă, de aceea un cronometru care numără bătăi poate termina cu întârziere.
Citirea ceasului în locul numărării
Soluția este să înregistrezi când a pornit timer-ul și când trebuie să se încheie. Browserul oferă un ceas de înaltă rezoluție, performance.now(), destinat măsurării intervalelor. Când se actualizează afișajul, timer-ul calculează timpul rămas ca diferență între ora de final și ora curentă. O actualizare întârziată arată pentru o clipă un număr ușor depășit, dar următoarea actualizare îl corectează, pentru căልcalculul nu depinde de câte bătăi au trecut. Timer-ul online de pe acest site funcționează astfel.
Pauza salvează timpul rămas. Reluarea stabilește o nouă oră de final, adică ora curentă plus timpul rămas, astfel încât pauza nu afectează numărătoarea.
Pagina setează și un temporizator pentru momentul în care trebuie să se încheie numărătoarea. Alarma nu mai așteaptă următoarea actualizare a afișajului, chiar dacă afișajul este întârziat.
De ce afișajul rotunjește în sus
Un cronometru arată timpul rămas rotunjit în sus, până la următoarea secundă întreagă. Un timer de trei secunde indică 00:03 la început, apoi 00:02 și 00:01 pe parcurs și 00:00 când se termină. Rotunjirea în jos ar afișa 00:00 în ultima secundă, ceea ce pare cu o secundă mai devreme. Un cronometru de bucătărie funcționează la fel.
Sunetul și ecranul
Tonul este generat de sistemul audio al browserului, deci nu se descarcă niciun fișier audio. Browserele permit sunetul doar după o acțiune a utilizatorului pe pagină, așa că sunetul se pregătește când apeși Start. Setările de volum și de mut ale dispozitivului rămân valabile.
Blocarea ecranului este opțională. Acolo unde browserul o acceptă, pagina poate cere dispozitivului să mențină ecranul aprins cât timp rulează timer-ul. Browserul eliberează blocarea când fila este ascunsă, așa că pagina o cere din nou când revii.
Ce măsoară o tură de cronometru
Un cronometru adună intervalele de timp în care a rulat, iar pauza oprește această sumă. Totalul este timpul de la pornire, iar o tură este diferența dintre totalul curent și totalul din tura precedentă. Timpul turei 1 este egal cu primul total. Timpul turei 2 este egal cu al doilea total minus primul. Afișajul arată sutimi de secundă, dar măsurarea este limitată de dispozitiv și de browser, așa că tratează ultima cifră ca pe una aproximativă. Pentru orele de lucru, mai degrabă decât pentru un cronometru, calculatorul de ore lucrate face calculele din orele de ceas, după cum se explică în orele lucrate în ture de noapte.
Verificări practice
- Testează un timer scurt cu un ceas de mână înainte să te bazezi pe el pentru gătit sau antrenament. Un test de 30 de secunde este suficient ca să vezi cum se comportă dispozitivul.
- Ține volumul sus și verifică dacă dispozitivul nu este pe mut.
- Un timer păstrează ora exactă cât timp fila este ascunsă, dar închiderea filei sau reîncărcarea paginii îl resetează.
- Dacă laptopul intră în repaus în timpul unei numărători, verifică timpul rămas când se trezește, deoarece comportamentul în repaus depinde de dispozitiv și de browser.
Cum se face cu fixmint
- Alege Timer, apoi apasă o valoare predefinită, cum ar fi 5 min, sau scrie Ore, Minute și Secunde.
- Apasă Start. Poți schimba fila, iar timpul rămâne corect. O reîncărcare resetează timer-ul.
- Bifează Ține ecranul aprins cât timp rulează dacă browserul îți oferă această opțiune.
- Pentru ture, alege Cronometru, apasă Start, apoi Tură pentru fiecare interval.
- Cronometrează un test de 30 de secunde cu un ceas de mână înainte să te bazezi pe timer pentru gătit sau antrenament.
Cazuri speciale
- Schimbări de oră. Numărătoarea măsoară timpul scurs, nu ceasul de perete, așa că trecerea la ora de vară sau de iarnă nu o afectează.
- Timere lungi. Un timer de mai multe ore rămâne exact, dar verifică dacă dispozitivul nu a intrat între timp în repaus.
- Mai multe timere. Fiecare timer își păstrează propria oră de final, deci două timere în două file nu se influențează reciproc.
Răspunsuri rapide
De ce întârzie un timer într-o filă din fundal? Browserele încetinesc temporizatoarele repetitive din filele ascunse, așa că un timer care numără bătăi rămâne în urmă. Un timer care citește ceasul nu.
Va fi timer-ul corect când revin la filă? Da. Afișează timpul rămas calculat din ora de final salvată.
Care este diferența dintre o tură și un total? O tură este timpul scurs de la tura precedentă. Totalul este timpul scurs de la pornirea cronometrului.
Tradus din Original în engleză cu ajutorul AI.
Comentarii
Încă nu sunt comentarii. Fii primul.


