3

だから、私は静的な開始点から時間を数えるだけの簡単な時計を作っています。問題は、2番目のマークが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);
}
4

1 に答える 1

8

問題は、基数を parseInt 関数に渡していないことです。試す:

var num = parseInt($('#minute').text(), 10);

詳細はこちら: http://www.w3schools.com/jsref/jsref_parseint.asp

于 2010-10-13T17:21:26.793 に答える