Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Зацикленный таймер (https://javascript.ru/forum/misc/29516-zaciklennyjj-tajjmer.html)

jacko 01.07.2012 13:02

Зацикленный таймер
 
Привет, помогите пожалуйста сделать зацикленный таймер.
Задача, чтобы таймер тикал и отсчитывал часы, минуты и секунды до следующего дня, затем снова возвращался в значение 23.59.59 и по новой до 00.00.00
Вот нашел код, но он отсчитывает до определенной даты, это не совсем то что надо.

<html>
<head>
<title>Таймер обратного отсчета</title>
<script type="text/javascript">
<!--
function newYearIn()
{
        var now = new Date();
        var newYear = new Date("Jan,01,2013,00:00:00");
        var totalRemains = (newYear.getTime()-now.getTime());
        if (totalRemains>1)
        {
                var RemainsSec=(parseInt(totalRemains/1000));
                var RemainsFullDays=(parseInt(RemainsSec/(24*60*60)));
                var secInLastDay=RemainsSec-RemainsFullDays*24*3600;
                var RemainsFullHours=(parseInt(secInLastDay/3600));
                if (RemainsFullHours<10){RemainsFullHours="0"+RemainsFullHours};
                var secInLastHour=secInLastDay-RemainsFullHours*3600;
                var RemainsMinutes=(parseInt(secInLastHour/60));
                if (RemainsMinutes<10){RemainsMinutes="0"+RemainsMinutes};
                var lastSec=secInLastHour-RemainsMinutes*60;
                if (lastSec<10){lastSec="0"+lastSec};
        var mcend = Date.parse("Jan 1, 2012, 00:00:00");
                var mcnow = now.getTime();
                var mc = ((mcend-mcnow)/10).toFixed(0).substr(8);
                document.getElementById('newyear').innerHTML = RemainsFullHours+":"+RemainsMinutes+":"+lastSec;
                setTimeout("newYearIn()",10);
        }
        else {document.getElementById("newyear").innerHTML = "СОБЫТИЕ НАСТУПИЛО !!!";}
}
//-->
</script>
</head>
<body onload="newYearIn();">
<div id="newyear"></div>
</body>
</html>

melky 01.07.2012 13:30

Цитата:

Сообщение от jacko
var newYear = new Date("Jan,01,2013,00:00:00");

cюда ставим нужную дату - т.е. "завтра"

можно так
var newYear = new Date(now.getFullYear(), now.getMonth(), now.getDate() + 1);
// протестировать с концом года!

jacko 01.07.2012 13:32

спасибо!


Часовой пояс GMT +3, время: 09:00.