[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Таймер обратного отсчета
Гость_Константин
Здравствуйте. Помогите, пожалуйста, сделать таймер обратного времени. Суть вот в чем: есть количество секунд, которое он должен отсчитать, после того, как таймер проходит время он снова начинается, но уже с другим количеством секунд. Т.е. круговой таймер с одним входным временем и другим повторяющимся. Таймер, показывающий часы,минуты,секунды
Гость_Константин
Но там нет просто при обнулении текст заменяется. А мне при обнулении надо поставить таймер на новое время (оно всегда одинаково)
Ramzes_Ra
<script type="text/javascript">
function timer(){
var obj=document.getElementById('timer_inp');
obj.innerHTML--;
if(obj.innerHTML==0){obj.innerHTML='10';setTimeout(timer,1000);}
else{setTimeout(timer,1000);}
}

setTimeout(timer,1000);
</
script>

<div id="timer_inp">10</div>
Гость_Константин
Ramzes_Ra, не все так просто))
killer8080
<?php 

$time1 = 'now + 15 seconds';
$time2 = 'now + 45 seconds';
?>
<div id="timer_message1"></div>
<
div id="timer_message2"></div>
<
script>
(
function(){
var counts = [
[
"timer_message1", <?php echo strtotime($time1) . '000' ?>],
[
"timer_message2", <?php echo strtotime($time2) . '000' ?>],
],

current = 0,
countDown = function(){
var message = document.getElementById(counts[current][0]),
expire = counts[current][1];
if(!message)
return;
var time = parseInt( (expire - new Date().getTime()) / 1000 );
if(--time <= 0){
if(!counts[++current])
clearInterval(timer);
message.innerHTML = 'время вышло';
countDown();
return;
}
var days = parseInt(time / 86400),
hours = parseInt(time / 3600) % 24,
minutes = parseInt(time / 60) % 60,
seconds = time % 60,
dayname = '';

//Склоняем слово ДЕНЬ
if(days > 4 && days <= 20)
dayname = " дней "
else {
switch(days % 10) {
case 1:
dayname = ' день ';
break;

case 2:
case 3:
case 4:
dayname = ' дня ';
break;

default:
dayname = ' дней ';
break;
}
}


hours = (hours < 10) ? '0' + hours : hours;
minutes = (minutes < 10) ? '0' + minutes : minutes;
seconds = (seconds < 10) ? '0' + seconds : seconds;

message.innerHTML = 'до события осталось: ' + (days ? days + dayname : '') + hours + ':' + minutes + ':' + seconds;
},
timer = setInterval(countDown, 1000);
countDown();
})()
</
script>
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.