Ho notato che se imposto lo setTimeout
per 1 minuto in futuro e poi cambio il mio sistema su 5 minuti in passato, la funzione setTimeout
si innescherà in 6 minuti .JavaScript setTimeout e modifiche all'ora di sistema causano problemi
Ho fatto questo perché volevo vedere cosa succede durante una modifica dell'ora legale all'ora del sistema.
La mia pagina Web JavaScript utilizza la funzione setTimeout
per aggiornare automaticamente la pagina ogni 5 secondi e, se l'ora legale dovesse verificarsi, le informazioni sulla pagina si congelerebbero per un'ora. C'è una soluzione?
Modifica: sto aggiornando la pagina utilizzando Ajax, non desidero aggiornare l'intera pagina.
Quale browser stai utilizzando? –
Quando si verifica una modifica dell'ora legale, in realtà si tratta di una modifica dell'offset del fuso orario, non di una modifica all'ora UTC. Il test che hai eseguito non modella ciò che accade realmente se l'ora legale viene gestita automaticamente dal sistema. [Leap seconds] (http://en.wikipedia.org/wiki/Leap_second) potrebbe ancora rappresentare un problema, tuttavia, come sarebbe una sincronizzazione automatica dell'ora se l'orologio del computer si fosse allontanato molto dal tempo reale (quindi non sarebbe gradualmente cambiare il tempo). – PleaseStand
Ho appena provato questo in IE7, IE8, IE9, Firefox e Chrome su Windows 7 e non vedo il comportamento che descrivi. Forse questo è specifico per il sistema operativo? – gilly3