Pers.narod.ru. JavaScript. Динамический счётчик дней и времени до события или от него

Скрипт динамически отсчитывает время, оставшееся до наступления события и выводит его вместе со строкой описания события в виде

Строка N Дней, H ч. M м. S с.

например

До конца света 60 дней, 11 ч. 49 м. 50 с.

или

От конца света 305 дней, 12 ч. 11 м. 56 с.

Для простоты скрипт не проверяет корректность переданных даты и времени. Раздел с идентификатором clock1, в который пишется время, скрипт создаёт самостоятельно.

Основной код связан с определением количества дней, часов, минут и секунд по метке времени Javascript (числу миллисекунд, прошедших с полночи по Гринвичу от даты 1 января 1970 года). Если z - текущая метка даты/времени, а Timeout - дата/время наступления события, то имеем

var z=new Date().getTime();
var t=Math.floor((Math.max(Timeout,z)-Math.min(Timeout,z))/1000);
var d=Math.floor(t/86400); t-=d*86400;
var h=Math.floor(t/3600); t-=h*3600;
var m=Math.floor(t/60); t-=m*60;
var s=t;
//На выходе - число дней d, и часы-минуты-секунды h,m,s

Для вызова скрипта достаточно кода такого вида:

<script type="text/javascript" src="http://pers.narod.ru/jscript/eventtimer.js"></script>
<script type="text/javascript">
 inittime (21,12,2012,13,0,0,'До конца света ','От конца света ');
</script>
<noscript><div align="center" style="font-size:10px">Javascript отключён или недоступен</div></noscript>

Вот как он работает:

Javascript отключён или недоступен

Параметры функции inittime следующие:

inittime (день,месяц,год,часы,минуты,секунды,СтрокаДо,СтрокаПосле);

Первые 6 параметров задают дату и время события, а параметры СтрокаДо и СтрокаПосле добавляются перед оставшимся временем до и после наступления события соответственно.

Файл с исходником скрипта eventtimer.js прикреплён ниже

 файл eventtimer.js (1 Кб)

Рейтинг@Mail.ru
вверх гостевая; E-mail
Hosted by uCoz