Таймер обратного отсчета на javascript
20 Декабрь 2011
Нет комментариев
Выкладываю код таймера отсчета времени до определенной даты, который считает дни, часы, секунды.
function timer( start, finish, step ) { var now = new Date(start+step); var newTime = new Date(finish); var totalRemains = (newTime.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 = new Date(finish); var mcnow = now.getTime(); $("#timer").html("Осталось: "+RemainsFullDays+" дней "+RemainsFullHours+":"+RemainsMinutes+":"+lastSec); step += 1000; setTimeout("timer()",1000); } else { $("#timer").html("Время истекло."); } } $(document).ready(function(){ timer(<?php echo time()*1000?>,<?php echo $finish*1000;?>,0); });
start – текущее время в миллисекундах
finish – время окончания в миллисекундах
step – шаг отсчета в миллисекундах