Вот мой вариант функции :
function myTimer() {
var d=new Date(2012,04,04,15,15,0);
var today=new Date();
var dRest = Math.floor((d.getTime()-today.getTime())/(1000*60*60*24))
var sec = 60 - today.getSeconds();
var min = 15 - today.getMinutes();
var hour = 15 - today.getHours();
var body = document.getElementsByTagName("body")[0];
var cont = document.createElement('div');
var elem = document.createElement('div');
cont.appendChild(elem);
body.appendChild(cont);
var a = setInterval ( function() {
sec--;
if ( sec==0 ) {
sec = 59;
min--;
} else if (min < 0) {
min = 60 + min;
hour--;
}
if ( sec < 10 ) {
brS = ":0"; //добавить перед секундами 0, если число не двузначное
} else { brS = ":"} ;
if ( min < 10 ) {
brM = ":0"; //добавить перед минутами 0, если число не двузначное
} else { brM = ":"} ;
if ( hour < 0 ) {
hour = 24 + hour;
}
elem.innerHTML = hour + brM + min + brS + sec;
},1000 );
}
myTimer();
Надеюсь у вас получилось лучше ))