3

私はこのJavaScriptコードを持っています

 function updateClock() {
        time = time + 1;
       var  mins = 1;
       var secs = 50
       var mins = parseInt(mins/ 60);
       var secs = time - mins * 60;

        mins = mins.toString();
        secs = secs.toString();

        if (mins.length < 2)
            mins = "0" + mins;
        if (secs.length < 2)
            secs = "0" + secs;


        var timeDisp = document.getElementById("timerDisp");
        timeDisp.innerText = mins + ":" + secs;
    }

経過時間をカウントしていますが、カウントダウンをしたい場合はどうすればよいですか? (またはその逆を行う)時間を追跡する代わりに、時間の経過とともに一定の時間が減少する場合、たとえば1分15秒を指定したい場合、指定されたコードでそれをどのように実行しますか?

4

2 に答える 2

5

updateClock()で 1 秒ごとに実行setTimeout()して、カウントダウンを作成できます。

var time;
function UpdateClock() {
    time = time - 1;

    if (time > 0) {
        setTimeout(UpdateClock, 1000); // 1000 miliseconds
    }

    var mins = parseInt(time / 60, 10);
    var secs = time - mins * 60;

    mins = mins.toString();
    secs = secs.toString();

    if (mins.length < 2)
        mins = "0" + mins;
    if (secs.length < 2)
        secs = "0" + secs;

    timeDisp.innerText = mins + ":" + secs + " left";
}

function StartCountdown(countdowntime) {
    time = countdowntime;
    updateClock();
}
于 2012-10-04T07:22:57.843 に答える
0

カウントダウンには setInterval() を使用できます。http://www.w3schools.com/jsref/met_win_setinterval.aspを参照してください。

于 2012-10-04T07:30:48.810 に答える