所以,我正在做一个简单的时钟,它只是从静态起点开始计算时间。问题是,当第二个标记达到8时,它将重置为0。我不知道为什么。帮助!
这是时钟:http://jsfiddle.net/Ender/jMbem/
下面是它的代码:
HTML:
<h1>Mark's Busted Computer Clock</h1>
<div id="time">
<span id="hour">146</span>:<span id="minute">45</span>:<span id="second">00</span>
</div>JS:
$(function() {
setInterval(UpdateSecond, 1000);
});
function UpdateSecond() {
var num = parseInt($('#second').text());
num++;
if (num == 60) {
num = 0;
UpdateMinute();
}
if (num < 10) {
num = "0" + num;
}
$('#second').text(num);
}
function UpdateMinute() {
var num = parseInt($('#minute').text());
num++;
if (num == 60) {
num = 0;
UpdateHour();
}
if (num < 10) {
num = "0" + num;
}
$('#minute').text(num);
}
function UpdateHour() {
$('#hour').text(parseInt($('#hour').text()) + 1);
}发布于 2010-10-14 01:21:27
问题是您没有将基数传递给parseInt函数。尝试:
var num = parseInt($('#minute').text(), 10);更多信息请点击此处:http://www.w3schools.com/jsref/jsref_parseint.asp
https://stackoverflow.com/questions/3926220
复制相似问题