私は時間を表示するビューに$rootScope.Minutes
と$rootScope.Seconds
を使用していますタイマーインターバル時間の設定方法は?
function startTimer(duration) {
$rootScope.timer = duration;
$rootScope.minute = 0;
$rootScope.second = 0;
$rootScope.Minutes = 0;
$rootScope.Seconds = 0;
setInterval(function() {
$rootScope.minute = parseInt($rootScope.timer/60, 10)
$rootScope.second = parseInt($rootScope.timer % 60, 10);
$rootScope.Minutes = $rootScope.minute < 10 ? "0" +
$rootScope.minute : $rootScope.minute;
$rootScope.Seconds = $rootScope.second < 10 ? "0" +
$rootScope.second : $rootScope.second;
if (--$rootScope.timer < 0) {
$rootScope.timer = duration;
}
}, 1000);
}
startTimer(300);
する機能を次のように使用しています。時間は秒単位で減少します。しかし、私がタイマーを閉じて再び開いた場合、それは2秒短縮されます。もう一度閉じると開き、3秒後に減少します。賢明な反復のように。私はどこで間違ったのか分かりません。私を助けてください。
フィドルで完全なコードを投稿してください。 –