Цифровые Часы JS
Вчера столкнулся с задачей включить цифровые часы датой и отображением дня недели на сайт.
Задача: Сегодня: 08.01.2014 г.Ср 23:28
Не глядя на то, что ничего сверхъестественного в этом нет, поиски подходящих скриптов для поднятия базовой идеи заняли достаточно времени, спасибо SEO`шникам и копипастерам.
И пусть скрипт я нашел:
var weekday=new Array(7); weekday[0]="Вс"; weekday[1]="Пн"; weekday[2]="Вт"; weekday[3]="Ср"; weekday[4]="Чт"; weekday[5]="Пт"; weekday[6]="Сб"; function datetime(){ var time = new Date(); var hours = time.getHours(); var minutes = time.getMinutes(); var day = time.getDate(); var month = time.getMonth()+1; if (hours < 10) hours = "0" + hours; if (minutes < 10) minutes = "0" + minutes; if (day < 10) day = "0" + day; if (month < 10) month = "0" + month; jQuery(".time").html(day+"."+month+"."+time.getFullYear()+" г."+weekday[time.getDay()]+" "+hours+":"+minutes); }
Проблемы продолжились, т.к. попытки запустить эти часы венчались неудачей за неудачей.
Вроде бы все просто, вроде бы setInterval должен решить проблему, но он не срабатывал.
Пришлось посетить с 10ок сайтов до того, как наткнулся(к сожалению уже не помню где, но видимо в одной из документаций) на правильную лексику команды:
setInterval(function(){datetime()}, 5000);
В итоге результирующий скрипт приобрел вид:
jQuery(document).ready(function($) { var weekday=new Array(7); weekday[0]="Вс"; weekday[1]="Пн"; weekday[2]="Вт"; weekday[3]="Ср"; weekday[4]="Чт"; weekday[5]="Пт"; weekday[6]="Сб"; function datetime(){ var time = new Date(); var hours = time.getHours(); var minutes = time.getMinutes(); var day = time.getDate(); var month = time.getMonth()+1; if (hours < 10) hours = "0" + hours; if (minutes < 10) minutes = "0" + minutes; if (day < 10) day = "0" + day; if (month < 10) month = "0" + month; jQuery(".time").html(day+"."+month+"."+time.getFullYear()+" г."+weekday[time.getDay()]+" "+hours+":"+minutes); } setInterval(function(){datetime()}, 5000); datetime(); });
Автор: Александр Косарев Категория: Разработка Опубликовано: 08 января 2014