在计算到数字后,让FlipClock.js停止

时间:2014-07-30 13:59:29

标签: javascript flipclock

我无法让FlipClock.js在达到特定计数后停止。我尝试过使用“clock.stop();”调用,但即使经过多次尝试设置“停止”号码,它也无效。这是我的代码所用的代码:

<script type="text/javascript">
    var clock;

    $(document).ready(function() {

        // Instantiate a counter
        clock = new FlipClock($('.clock'), {
            clockFace: 'Counter',
            minimumDigits: 4,
        });

        setTimeout(function() {
            setInterval(function() {
            clock.increment();
        }, 0.1);        
        });             
    });
</script>

关于如何设置我的计数器停在“300”的任何想法?非常感谢任何帮助!

2 个答案:

答案 0 :(得分:4)

编辑:未调用FlipClock回调

FlipClock回调中似乎存在错误。

这是一个替代解决方案(你似乎有很多额外的代码,不知道为什么,这是一个精简版本):

    var clock,countup;
    clock = new FlipClock($('h1'), {
        clockFace: 'Counter',
        minimumDigits: 4
    });


    countup = setInterval(function() { 
     if(clock.getTime().time > 300) {
       clock.stop();
       clearInterval(countup);
     }
    },500); 

检查flipclockjs.com以获取有关回调的文档。

以下是一个例子:

        var clock,countup;

        clock = new FlipClock($('.clock'), {
            clockFace: 'Counter',
            minimumDigits: 4,
            callbacks: {
             interval: function() {
               var time = clock.getTime().time;
               if(time > 300) { clearInterval(countup); }
             }
            }
        });

        setTimeout(function() {
         countup = setInterval(function() { clock.increment(); }, 0.1);        
        });     

答案 1 :(得分:3)

你摇滚亚当......这最终有效......

var clock,countup;
        clock = new FlipClock($('.clock'), {
            clockFace: 'Counter',
            minimumDigits: 4,
        });

countup = setInterval(function() {
    clock.increment();
        if(clock.getTime().time > 300) {
        clock.stop();
        clearInterval(countup);
        }     
}, 0);