обратный отсчет на сутки
например 23 дня 19:11:22 (часы, минуты, секунды)
только тут дату не нужно указывать, лучше просто обратный счетчик на сутки или на двое, а потом снова заново начинается... или на 64 часа обратный отсчет и чтобы заново потом начинался подскажите, если какое решение для этого?) |
|
видел я их, они все с до указанной даты, а мне скорее всего нужен просто обратный отчет времени, 24 часа хотя бы
|
|
|
<div class="time"></div> <script> var x = 24*60*60*1000; // тоесть сутки down = document.querySelector('.time'), now = new Date(), end = new Date(2018, 8, 8); while(end < now) end = end.valueOf() + x; // когда закончится добавятся еще X (сейчас сутки) (function tick(){ down.innerHTML =''; var now = new Date(), ost = new Date(end - now), s = Math.floor(ost/1000), m = Math.floor(s/60), h = Math.floor(m/60), d = Math.floor(h/24); s = s%60+''; m = m%60+''; h = h%24+''; d = d+''; d = d.length == 1 ? '0'+d:d; h = h.length == 1 ? '0'+h:h; m = m.length == 1 ? '0'+m:m; s = s.length == 1 ? '0'+s:s; down.innerHTML = d+' дней '+h+' часов '+m+' минут '+s+' секунд'; if(ost>0) setTimeout(tick, 1000); })(); </script> |
javascrip,
если не указывать конечную дату, то про обновлении счетчик будет опять сутки отсчитывать, а это полагаю не то что нужно. |
j0hnik,
:-? <div class="time"></div> <script> var x = 24*60*60*1000; // тоесть сутки down = document.querySelector('.time'), end = +new Date(); (function tick(){ var ost = end - new Date(); if(ost < 0) {end += x; ost = x}; var s = Math.floor(ost/1000), m = Math.floor(s/60), h = Math.floor(m/60), d = Math.floor(h/24); s = s%60+''; m = m%60+''; h = h%24+''; d = d+''; d = d.length == 1 ? '0'+d:d; h = h.length == 1 ? '0'+h:h; m = m.length == 1 ? '0'+m:m; s = s.length == 1 ? '0'+s:s; down.innerHTML = d+' дней '+h+' часов '+m+' минут '+s+' секунд'; requestAnimationFrame(tick) })(); </script> |
рони,
такие счетчики из серии "до конца акции осталось", и при обновлении страницы нужно не заново считать, а продолжать отсчет. |
:)
<div class="time"></div> <script> var x = 24*60*60*1000; // тоесть сутки down = document.querySelector('.time'), end = x; function tick(e){ var ost = end - e; if(ost < 0) {end = ost = x}; var s = Math.floor(ost/1000), m = Math.floor(s/60), h = Math.floor(m/60), d = Math.floor(h/24); s = s%60+''; m = m%60+''; h = h%24+''; d = d+''; d = d.length == 1 ? '0'+d:d; h = h.length == 1 ? '0'+h:h; m = m.length == 1 ? '0'+m:m; s = s.length == 1 ? '0'+s:s; down.innerHTML = d+' дней '+h+' часов '+m+' минут '+s+' секунд'; requestAnimationFrame(tick) }; requestAnimationFrame(tick) </script> |
Часовой пояс GMT +3, время: 00:05. |