-2

h = 0; のときの間隔をクリアしたい。m = 0; s = 0;

それを行う方法...これは常にループしています...

コードを見て

var h = 10;
var m = 11;
var s = 12;


function countdown() {

    h--;
    m--;
    s--;

    var t = h + ":" + m + ":" + s;

    document.getElementById("show").innerHTML = t;


    if (h == 0 && m == 0 && s == 0) {
        clearInterval(timer);
    }

}

var timer = setInterval('countdown()',1000);

countdown();
4

5 に答える 5

3

このようにあなたの条件を使用してください

if (h > 0)
h--;
if (m > 0)
m--;
if (k > 0)
s--;

デモを見る

于 2013-04-26T12:36:38.447 に答える
2

h、異なるポイントで 0ms到達するため、すべてが同時にゼロになることはありません。

次のようにして、それらが 0 未満に減少しないようにする必要があります。

if (h) h--;
if (m) m--;
if (s) s--;

ライブデモ: http://jsfiddle.net/Kn296/

于 2013-04-26T12:36:28.063 に答える
1

hm、同時にsはないので、決してありません。0h == 0 && m == 0 && s == 0true

それがあなたのループが止まらない理由です。

于 2013-04-26T12:36:29.817 に答える
1

これはh、 、 m 、およびs値が同時にゼロになることは決してないためです。

于 2013-04-26T12:36:31.220 に答える