buenas,
tal y como concluyes, el script funciona solo hasta los segundos. para hacerlo funcionar hasta los milisegundos, tendrías que agregar o modificar algunas líneas. algunas de las posibles líneas son:
- cuando se obtiene la diferencia del tiempo transcurrido o del faltante, no se debe truncar el resultado a segundos. el computo de la variable gsecs.
- el setTimeout, en lugar de actualizar por segundos, debería actualizar por cierta cantidad de milisegundos. por tanto, debe cambiar el valor de la variable setTimeOutPeriod.
- puesto que se actualiza por milisegundos, la variable CountStepper debe sumar la transición por milisegundos. lo adecuado sería que el valor de dicha variable sea la misma constante con la que se actualiza el conteo.
- agregar un nuevo parámetro al string que contiene el formato. por ejemplo, %%ms%% para indicar milisegundos. conjuntamente debes agregar una línea adicional a la función CountBack para detectar el nuevo parámetro. en dicha línea, debes indicar como remplazo la operación necesaria para obtener los milisegundos de la variable local secs. puedes usar la función calcage.
- nótese que los argumentos pasados a calcage dentro de la función CountBack son a base de segundos. puesto que ahora se calcula en base a milisegundos, los cálculos realizados para obtener cada parte del tiempo deben realizarse a base de milisegundos.
creo que eso es todo lo necesario.