0

複数回実行できる時計アプリケーションがありますが、アプリケーションを再起動するたびに、前のアプリケーションが停止します。ターゲットを使用する必要があると思いますか? ああこれ。しかし、関数のどこで使用すればよいかわかりません。

時計の機能。

function myFunction() {
    startClock();

    function startClock() {
        var digits = new Array("zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine");
        var h = new Date().getHours().toString();
        var m = new Date().getMinutes().toString();
        var s = new Date().getSeconds().toString();
        var t = ((h > 9 ? h : "0" + h) + (m > 9 ? m : "0" + m) + (s > 9 ? s : "0" + s));

        hours.appendChild(hour1).className = "clock-digit-" + digits[t.substring(0, 0 + 1)];
        hours.appendChild(hour2).className = "clock-digit-" + digits[t.substring(1, 1 + 1)];
        minutes.appendChild(minute1).className = "clock-digit-" + digits[t.substring(2, 2 + 1)];
        minutes.appendChild(minute2).className = "clock-digit-" + digits[t.substring(3, 3 + 1)];
        seconds.appendChild(sec1).className = "clock-digit-" + digits[t.substring(4, 4 + 1)];
        seconds.appendChild(sec2).className = "clock-digit-" + digits[t.substring(5, 5 + 1)];

        t = setTimeout(function () {
            startClock()
        }, 1000);
    }
}

jsFiddle http://jsfiddle.net/dymond/nufwb/を作成しました

しかし、test を 2 回押すとわかるように、前の. 時計が止まる…

4

1 に答える 1

0

の外で変数を定義してみてくださいmyFunction()

var t1 = setTimeout(function(){startClock()},1000);
var t2 = setTimeout(function(){startClock()},2000);

あなたが今していることは、あなたが走るたびに前の時計を上書きすることですmyFunction()

于 2013-02-12T11:56:01.980 に答える