СУТЬ ТАКОВА)!
есть обьект
timer в него передается 2 аргумента
1) время которое нужно отсчитывать
2) функция которая будет выполняться каждую секунду
timer(время, функция);
время передается массивом, часы минуты секунды
[1,15, 42] 1 час 15 минут 42 секунды.
[0,0,10] 0 часов 0 минут 10 секунд.
timer([0,0,10], функция)
в нашу функцию будут передаваться 3 параметра, часы минуты и секунды обратного отсчета. и их можно естественно использовать внутри её.
то есть нужно писать так
timer([0,0,10] , function(часы, минуты, секунды) { alert(часы) } )
обьект
timer имеет методы
pause() и
start()
просто нужно написать
timer.pause() // приостановка
timer.start() // запуск с приостановленного места
function timer(_time, _call){
timer.lastCall = _call
timer.lastTime = _time
timer.timerInterval = setInterval(function(){
_call(_time[0],_time[1],_time[2]);
_time[2]--
if(_time[0]==0 && _time[1]==0 && _time[2]==0){
timer.pause()
_call(0,0,0);
}
if(_time[2]==0){
_time[2] = 59
_time[1]--
if(_time[1]==0){
_time[1] = 59
_time[0]--
}
}
timer.lastTime = _time
}, 1000)
}
timer.pause = function(){
clearInterval(timer.timerInterval)
}
timer.start = function(){
timer(timer.lastTime, timer.lastCall)
}
//сверху мое, а тут уже ваше)
//тут мы начинаем таймер. передаем массив с временем и функцию которая будет вызываться каждую секунду
timer([0,0,7], function(h,m,s){
alert(h + ':' +m + ':' +s) // алертнуть часы минуты и секунды
})
timer.pause()
timer.start()