Des minuteurs qui fonctionnent dans un onglet en arrière-plan (et pourquoi certains n'y parviennent pas)
Le problème du throttling
Les navigateurs économisent l'énergie en limitant le JavaScript des onglets en arrière-plan, et chaque navigateur trace la ligne différemment. Les images d'animation s'arrêtent presque immédiatement, si bien que tout minuteur construit sur une boucle visuelle dérive ou se fige. Les minuteurs fondés sur le wall-clock, où le compte à rebours est calculé à partir de l'heure effective plutôt que par décompte de secondes, restent précis même quand l'onglet est throttlé, car le navigateur les réveille encore périodiquement pour les vérifier.
Ce qui survit en arrière-plan
Les minuteurs basés sur setInterval sont ralentis à peu près à une exécution par seconde, ou pire, dans les onglets en arrière-plan, mais ils continuent de se déclencher : c'est pourquoi un minuteur bien construit continue de tourner et seuls les chiffres, animés en douceur, en pâtissent. Les alertes audio forment l'autre risque : certains navigateurs bloquent le son dans les onglets en arrière-plan non visités, à moins que l'onglet n'ait connu une interaction utilisateur. Une page de minuteur que vous avez cliquée pour l'amorcer a interagi, donc son alarme sonnera ; un minuteur qui démarre de lui-même n'aura pas cette chance.
Les notifications comme filet de sécurité
Les minuteurs de navigateur les plus robustes déclenchent à la fois une alarme dans la page et une notification système, si bien que l'alerte vous parvient même quand la fenêtre du navigateur est réduite ou que vous êtes dans une autre application. L'autorisation de notifications est demandée à la première utilisation. Pour les longs comptes à rebours (une heure ou plus, comme une réunion ou un cycle de machine à laver), cela compte plus que la précision ; pour les courts intervalles (cuisine, séries d'entraînement), l'alarme sonore fait le travail et la notification est un simple confort.
Pourquoi les téléphones donnent des résultats mitigés
Les navigateurs mobiles limitent plus sévèrement les onglets en arrière-plan que les versions de bureau, et certains verrouillent entièrement l'écran, ce qui peut mettre en pause ou tuer un minuteur web. Un minuteur web fonctionne bien sur un téléphone quand l'écran reste allumé et l'onglet visible ; il est l'outil mal choisi pour minuter un téléphone resté dans votre poche. Pour les scénarios de poche, une application native ou un minuteur physique l'emportent. Sachez dans quel scénario vous vous trouvez avant de vous fier à un compte à rebours.
Tester votre minuteur une fois
Réglez tout nouveau minuteur sur 1 minute, changez d'onglet et attendez. Si l'alarme sonne dans les quelques secondes qui suivent la minute, le minuteur résiste au throttling et vous pouvez lui faire confiance. S'il sonne en retard ou pas du tout, vous avez appris en deux minutes ce que vous auriez découvert autrement pendant que vos pâtes débordaient. Notre minuteur passe ce test sur les navigateurs de bureau et alerte depuis un onglet en arrière-plan, et c'est précisément pour cela que nous l'avons construit.
Outils
Notre minuteur en ligne gratuit est fondé sur le wall-clock et sonne audiblement depuis un onglet en arrière-plan sur ordinateur. Testez-le une fois avec l'astuce des 1 minute ci-dessus, gardez le volume élevé, et vous disposez d'un compte à rebours qui se comporte comme un appareil ménager, non comme une page web.