[mw_shl_code=css, правда] <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Электронные часы</title> </head> <стиль type="text/css"> *{margin: 0; наполнение: 0; List-style: none} body{background-color: #D7154A; font-family: 'Microsoft Yahei'} .demo{ширина: 330px; высота: 100px; Бордюр: 3 пиксели в сплошном #fff; поля: 200px auto; высота линии: 100px; Выравнивание текста: центр; цвет: #fff; размер шрифта: 50px; Вес шрифта: 600; позиция: относительная; переполнение: скрыто; } .size{width: 100px; высота: 100px; Плавание: слева; } .pointer{ширина: 10px; высота: 100px; Плавание: слева; } .bottom{ширина: 200px; высота: 100px; Выравнивание текста: центр; Margin: 0 auto; цвет: #fff}
#next-h{позиция: абсолют; ширина: 100px; высота: 100px; слева: 0px; верх: 100px; } #next-m{позиция: абсолют; ширина: 100px; высота: 100px; слева: 110px; верх: 100px; } #next-s{позиция: абсолют; ширина: 100px; высота: 100px; слева: 220px; верх: 100px; }
</style> <body> <div class="demo"> <div id="час" class="size"></div> <div id="next-h"></div> <div class="указатель">:</div> <div id="минута" класс="размер"></div> <div id="next-m"></div> <div class="указатель">:</div> <div id="второй" класс="размер"></div> <div id="next-s"></div> </div> <div class="bottom"> Wusoft Forum</div> </body> <script type="text/javascript"> Узнайте текущее время var date=новая Дата(); var hour=date.getHours(); var minute=date.getMinutes(); var second=date.getSeconds();
Получите DOM того времени, которое отображается var ohour=document.getElementById("hour"); var ominute=document.getElementById("минута"); var osecond=document.getElementById("second");
Инициализация по времени функция init(){ ohour.innerHTML=fill(hour); ominute.innerHTML=fill(minute); osecond.innerHTML=fill(second); } init();
Возьмите скрытый DOM, вот DOM, чтобы показать в следующий раз var nhour=document.getElementById("next-h"); var nminute=document.getElementById("next-m"); var nsecond=document.getElementById("next-s");
Таймер управляет изменением времени setInterval(function(){ if(second==60){ второй=0; Добавьте 1 к количеству минутных стрелок if(минута==60){ минута=0; Час +1 if(час==24){ час=0; } Показано в коробке теневого шкура nhour.innerHTML=fill(hour); nhour++; Вызовите плавающую функцию движение (nhour, ohour); Коробку тоже нужно сбросить nhour.style.top="100px"; }
Показано в коробке теневого шкура nminute.innerHTML=fill(minute); минута++; Вызовите плавающую функцию move(nminute, ominute); Коробку тоже нужно сбросить nminute.style.top="100px"; }else{ второй++; } nsecond.innerHTML=fill(second); }, 1000)
В следующую секунду дом поднимается вверх Параметр 1: Коробка, которую нужно переместить Параметр 2: Коробка, которая наконец показывает время function move(obj,show){ var timer=setInterval(function(){ obj.style.top=getStyle(obj,"top")-1+'px'; if(getStyle(obj,"top")<=0){ clearInterval(таймер); show.innerHTML=obj.innerHTML; } }, 1) }
Меняется ли время прослушивания? var old=0; setInterval(function(){ if(old!=nsecond.innerHTML){ move(nsecond, osecond); nsecond.style.top="100px"; old=nsecond.innerHTML; } }, 1)
Вспомогательная функция для получения значений атрибутов function getStyle(obj,style){ var attr=window.getComputedStyle ? window.getComputedStyle(obj,null)[style]:obj.currentStyle[style]; Удалите блок px attr=attr.slice(0, -2); return parseInt(attr); }
Если длительность времени равна 1 бит, сначала добавляется 0 функция fill(str){ var s=str.toString(); if(s.length==1){ s='0'+s; возвраты s; }else{ возвратная сила; } }
</script> [/</html>mw_shl_code]
|