所以,我正在制作一个简单的时钟,只计算静态起点的时间。问题是,当第二个标记达到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);
}
答案 0 :(得分:8)
问题是你没有将基数传递给parseInt函数。尝试:
var num = parseInt($('#minute').text(), 10);