Warum Browser-Timer ungenau werden und wie ein Online-Countdown genau bleibt
Ein Browser-Timer bleibt genau, wenn er die Uhr abliest und nicht Takte zählt. Speichere die Endzeit beim Start und ziehe bei jeder Aktualisierung der Anzeige die aktuelle Uhrzeit davon ab. Takte können verspätet kommen oder in einem Hintergrund-Tab gebremst werden, aber die Rechnung stimmt trotzdem in dem Moment, in dem die Seite nachschaut.
Online-TimerTimer oder Stoppuhr nötig?Kostenlos loslegenWarum das Zählen von Takten abweicht
Eine gängige Methode, einen Timer zu programmieren, ist, jede Sekunde einen Zähler um eins zu verringern. Der Browser führt diesen Schritt mit einem wiederkehrenden Timer aus, der eine Funktion alle so vielen Millisekunden aufruft. Eine exakte Taktung garantiert der Browser nicht. Eine ausgelastete Seite, ein langsames Gerät oder ein verborgener Tab können jeden Takt verzögern, und die Verzögerungen summieren sich. Ein Zähler, der pro Takt ein paar Millisekunden verliert, ist nach einigen Minuten deutlich falsch.
Was verborgene Tabs bewirken
Browser bremsen Timer in Tabs, die du gerade nicht ansiehst. Das spart Akku und Rechenzeit. Chrome begrenzt zum Beispiel, wie oft wiederkehrende Timer in einem verborgenen Tab laufen, und nachdem ein Tab lange verborgen war, können diese Timer noch viel seltener laufen. Ein Zähler in so einem Tab hinkt hinterher. Deshalb kann ein Countdown, der Takte zählt, zu spät enden.
Stattdessen die Uhr ablesen
Die Lösung ist, Startzeitpunkt und Endzeitpunkt festzuhalten. Der Browser stellt eine hochauflösende Uhr bereit, performance.now(), die zum Messen von Zeitspannen gedacht ist. Beim Aktualisieren der Anzeige berechnet der Timer die Restzeit als Endzeit minus jetzt. Ein verspätetes Update zeigt kurz eine leicht veraltete Zahl, aber das nächste Update korrigiert sie, weil die Berechnung nicht davon abhängt, wie viele Takte gelaufen sind. Der Online-Timer auf dieser Seite arbeitet so.
Beim Pausieren wird die verbleibende Zeit gespeichert. Beim Fortsetzen setzt der Timer eine neue Endzeit als jetzt plus Restzeit, sodass die Pause den Zählstand nicht stört.
Die Seite stellt außerdem einen Timer auf den Moment, in dem der Countdown enden soll. Der Alarm wartet dann nicht auf die nächste Aktualisierung der Anzeige, auch wenn diese verzögert ist.
Warum die Anzeige aufrundet
Ein Countdown zeigt die verbleibende Zeit auf die nächste volle Sekunde aufgerundet an. Ein Dreisekunden-Timer zeigt am Start 00:03, während des Laufens 00:02 und 00:01 und bei Ende 00:00. Würde man abrunden, stünde in der letzten Sekunde schon 00:00, und das fühlt sich wie eine Sekunde zu früh an. Ein Küchenwecker zeigt es genauso.
Ton und Bildschirm
Der Ton wird vom Audiosystem des Browsers erzeugt, es wird also keine Audiodatei geladen. Browser erlauben Ton erst nach einer Aktion auf der Seite, daher wird das Audio beim Drücken auf Start vorbereitet. Die Lautstärke und die Stummschaltung deines Geräts gelten weiterhin.
Die Option, den Bildschirm wach zu halten, ist optional. Wo der Browser sie unterstützt, kann die Seite das Gerät bitten, den Bildschirm während des Timers eingeschaltet zu lassen. Der Browser gibt diese Sperre frei, sobald der Tab verborgen wird, deshalb fragt die Seite bei deiner Rückkehr erneut nach.
Was eine Stoppuhr-Runde misst
Eine Stoppuhr addiert die Zeitabschnitte, in denen sie gelaufen ist, und eine Pause beendet die Summe. Die Gesamtzeit ist die Zeit seit dem Start, und eine Runde ist die Veränderung der Gesamtzeit seit der vorherigen Runde. Die Zeit für Runde 1 entspricht der ersten Gesamtzeit. Die Zeit für Runde 2 entspricht der zweiten Gesamtzeit minus der ersten. Die Anzeige zeigt Hundertstelsekunden, doch die Genauigkeit ist durch Gerät und Browser begrenzt. Behandle die letzte Stelle deshalb als ungefähr. Für Schichtzeiten statt einer Stoppuhr rechnet der Stundenrechner die Summen aus Uhrzeiten aus, wie in Arbeitsstunden bei Nachtschichten beschrieben.
Praktische Checks
- Teste einen kurzen Timer mit einer Uhr, bevor du dich beim Kochen oder Training darauf verlässt. Ein 30-Sekunden-Test reicht, um zu sehen, ob das Gerät sauber läuft.
- Dreh die Lautstärke auf und prüfe, dass das Gerät nicht auf lautlos steht.
- Ein Timer läuft im verborgenen Tab genau weiter, aber wenn du den Tab schließt oder die Seite neu lädst, wird er zurückgesetzt.
- Wenn ein Laptop während eines Countdowns in den Ruhezustand geht, prüfe beim Aufwachen die Restzeit. Das Verhalten im Ruhezustand hängt von Gerät und Browser ab.
So geht's mit fixmint
- Wähle Timer und drücke eine Voreinstellung wie 5 min, oder gib bei Stunden, Minuten und Sekunden die Werte selbst ein.
- Drücke Start. Du kannst den Tab wechseln, die Zeit stimmt trotzdem. Ein Neuladen setzt den Timer zurück.
- Setze den Haken bei Bildschirm während des Laufs eingeschaltet lassen, wenn dein Browser diese Option anbietet.
- Für Runden wählst du Stoppuhr, drückst Start und dann bei jeder Zwischenzeit Runde.
- Miss einen 30-Sekunden-Test mit einer Uhr, bevor du dich beim Kochen oder Training auf den Timer verlässt.
Sonderfälle
- Uhrzeitumstellung. Ein Countdown misst die verstrichene Zeit, nicht die Wanduhr, daher hat die Umstellung auf Sommerzeit keinen Einfluss.
- Lange Timer. Ein Timer für mehrere Stunden bleibt genau, aber prüfe, ob das Gerät währenddessen nicht in den Ruhezustand gegangen ist.
- Mehrere Timer. Jeder Timer hat seine eigene Endzeit. Zwei Timer in zwei Tabs stören sich also nicht.
Kurze Antworten
Warum läuft ein Timer im Hintergrund-Tab nach? Browser bremsen wiederkehrende Timer in verborgenen Tabs, daher hinkt ein Timer, der Takte zählt, hinterher. Ein Timer, der die Uhr abliest, tut das nicht.
Stimmt der Timer, wenn ich zum Tab zurückkomme? Ja. Er zeigt die Restzeit anhand der gespeicherten Endzeit an.
Was ist der Unterschied zwischen Runde und Gesamtzeit? Eine Runde ist die Zeit seit der vorherigen Runde. Die Gesamtzeit ist die Zeit seit dem Start der Stoppuhr.
Mit KI-Unterstützung aus dem Englisches Original übersetzt.
Kommentare
Noch keine Kommentare. Schreib den ersten.


