Хорошо, а вот скажите тут)
var h = ( remain / 3600000 ^ 0 );
var m = ( remain / 60000 ^ 0 ) % 60;
var s = ( remain / 1000 ^ 0 ) % 60;
var ds = ( remain / 100 ^ 0 ) % 10;
% - делит, с выводом остатка так?
1) Допустим получаем минуты, и делим их "%" на 60 (т.к. 60 минут в 1 часе.) и получаем остаток минут, которые не входят в час, т.е. те что <60, так?
2) Ну вот что происходит с милисекундами непонятно), тут мы remain / 100 - откуда взялось 100? И почему % 10.