达到一定时间后停止计时器

Stop Timer after Reaching a certain time

本文关键字:计时器 定时间      更新时间:2023-09-26

使用javascript计时器,我有一个计时器,它从00:00开始,应该在00:10停止(运行10秒)。

问题是,我如何连续检查计时器的当前值,以便在10秒后停止它?

    <script>
        window.onload = function() {
            var timer = new Tock({
                callback: function () {
                    $('#clockface').val(timer.msToTime(timer.lap()));
                }
            });
            timer.start("00:01.780");
        }
    </script>
    <h2>Timer</h2>
    <input id="clockface" placeholder="00:00:00">

当前尝试次数:

            setTimeout(timer,1000);
            $('#clockface').change(function(){
               if($('#clockface').val() == "00:05.000") {
                  timer.stop();
                  alert("True");
               } else {
                  alert("False");
               }
            })

这似乎有效(JSFiddle:http://jsfiddle.net/gabrieldeliu/jLg2wvvL/1/):

var start_time;
var timer = new Tock({
    callback: function() {
        if (start_time && timer.lap() - start_time > 5000) {
            console.log('Stopped at ' + timer.msToTime(timer.lap()));
            timer.stop();
        }
    }
});
timer.start("00:01.780");
start_time = timer.lap();
console.log('Starts at ' + timer.msToTime(start_time));

这样尝试:

var init = new Date().getTime();
var inter = setInterval(function(){
    if(new Date().getTime() - init > 1000)
    {
        clearInterval(inter);
        return;
    }
}, 2500);