[英]How to format the elapsed time of setInterval method JavaScript
I have a simple setInterval setup like so: 我有一个简单的setInterval设置,如下所示:
var time = 0;
function a(){
window.setInterval(timer, 1000);
}
Which executes this function: 执行此功能:
function timer() {
time +=1;
document.getElementById("a").innerHTML = time + "s"
}
HTML is very simple for this. HTML非常简单。 It just displays as 0s
and increases. 它只显示为0s
并增加。
The problem I am having is that I can't seem to get it to display in a format like this 00:00:00
. 我遇到的问题是我似乎无法以00:00:00
这样的格式显示它。
Any help is much appreciated! 任何帮助深表感谢!
Create timer element 创建计时器元素
<div id="timer">
<span class="hours"></span>
<span class="minutes"></span>
<span class="seconds"></span>
</div>
Style 样式
#timer > .hours:after, #timer > .minutes:after{
content: ":";
}
Update timer 更新计时器
var Timer = function(element){
var secondsElement = element.getElementsByClassName("seconds")[0],
minutesElement = element.getElementsByClassName("minutes")[0],
hoursElement = element.getElementsByClassName("hours")[0],
show = function(num){
return ("0" + num).slice(-2);
};
return {
update: function(){
var now = new Date();
secondsElement.innerHTML = show(now.getSeconds());
minutesElement.innerHTML = show(now.getMinutes());
hoursElement.innerHTML = show(now.getHours());
}
};
};
var timer = new Timer(document.getElementById("timer"));
setInterval(function(){
timer.update();
}, 500);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.