[英]javascript timer minus counting
您好,我想当计时器到达最后期限以停止计数时...并且它停止了,但是当我刷新时以负号计数时像这样http://prntscr.com/9m17mn
我想要当它达到0时保持那样并刷新后
提前致谢
继承人的代码
<script> function getTimeRemaining(endtime){ var t = Date.parse(endtime) - Date.parse(new Date()); var seconds = Math.floor( (t/1000) % 60 ); var minutes = Math.floor( (t/1000/60) % 60 ); var hours = Math.floor( (t/(1000*60*60)) % 24 ); var days = Math.floor( t/(1000*60*60*24) ); return { 'total': t, 'days': days, 'hours': hours, 'minutes': minutes, 'seconds': seconds }; } function initializeClock(id, endtime){ var clock = document.getElementById(id); var daysSpan = clock.querySelector('.days'); var hoursSpan = clock.querySelector('.hours'); var minutesSpan = clock.querySelector('.minutes'); var secondsSpan = clock.querySelector('.seconds'); function updateClock(){ var t = getTimeRemaining(endtime); daysSpan.innerHTML = t.days; hoursSpan.innerHTML = ('0' + t.hours).slice(-2); minutesSpan.innerHTML = ('0' + t.minutes).slice(-2); secondsSpan.innerHTML = ('0' + t.seconds).slice(-2); if(t.total<=0){ clearInterval(timeinterval); } } updateClock(); var timeinterval = setInterval(updateClock,1000); } var deadline = "2016-01-04T18:04:00.000+01:00"; initializeClock('clockdiv', deadline); </script>
似乎您正在检查是否应该在设置html后停止计时器,这意味着您可能会显示负值:
function updateClock(){
var t = getTimeRemaining(endtime);
if(t.total<=0){
clearInterval(timeinterval);
daysSpan.innerHTML = '0';
hoursSpan.innerHTML = '0';
minutesSpan.innerHTML = '0';
secondsSpan.innerHTML = '0';
} else {
daysSpan.innerHTML = t.days;
hoursSpan.innerHTML = ('0' + t.hours).slice(-2);
minutesSpan.innerHTML = ('0' + t.minutes).slice(-2);
secondsSpan.innerHTML = ('0' + t.seconds).slice(-2);
}
}
像这样的东西:
<script> function getTimeRemaining(endtime){ var t = Date.parse(endtime) - Date.parse(new Date()); var seconds = Math.floor( (t/1000) % 60 ); var minutes = Math.floor( (t/1000/60) % 60 ); var hours = Math.floor( (t/(1000*60*60)) % 24 ); var days = Math.floor( t/(1000*60*60*24) ); return { 'total': t, 'days': days, 'hours': hours, 'minutes': minutes, 'seconds': seconds }; } function initializeClock(id, endtime){ var clock = document.getElementById(id); var daysSpan = clock.querySelector('.days'); var hoursSpan = clock.querySelector('.hours'); var minutesSpan = clock.querySelector('.minutes'); var secondsSpan = clock.querySelector('.seconds'); function updateClock(){ var t = getTimeRemaining(endtime); daysSpan.innerHTML = (t.total>0)?t.days:"0"; hoursSpan.innerHTML = (t.hours>0)?('0' + t.hours).slice(-2):"00"; minutesSpan.innerHTML = (t.minutes>0)?('0' + t.minutes).slice(-2):"00"; secondsSpan.innerHTML = (t.seconds>0)?('0' + t.seconds).slice(-2):"00"; if(t.total<=0){ clearInterval(timeinterval); } } updateClock(); var timeinterval = setInterval(updateClock,1000); } var deadline = "2016-01-04T18:04:00.000+01:00"; initializeClock('clockdiv', deadline); </script>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.