jquery轻量级数字动画插件jquery.countup.js

所属分类:其他,UI-动画效果,滚动

 26487  142  查看评论 (16)
jquery轻量级数字动画插件jquery.countup.js ie兼容8

插件说明

jquery.countup.js是一款轻量级jquery数字动画插件。该数字动画插件可以在页面滚动时,将指定的数字从0开始计数增加动画。

该数字动画插件可以控制动画的延迟时间和动画过渡时间。它依赖于Waypoints插件来监听滚动事件。

安装

可以通过npm或bower来安装jquery.countup.js插件。

npm install jquery.countup.js
bower install jquery.countup.js

使用方法

在页面引入jqueryjquery.waypoints.min.jsjquery.countup.min.js文件。

<script src="jquery.min.js"></script>
<script src="jquery.waypoints.min.js"></script>
<script src="jquery.countup.min.js"></script>

HTML结构

使用<span>元素作为数字的容器。

<span class="counter">1,498,547.00</span>
<span class="counter">7.99</span>
<span class="counter">1455455</span>

你也可以使用data-counter-time和data-counter-delay属性来设置数字动画的动画时间和延迟时间。

<span class="counter" data-counter-time="5000" data-counter-delay="50">1981</span>
<span class="counter" data-counter-time="100" data-counter-delay="20">9842</span>

初始化插件

在页面DOM元素加载完毕之后,可以通过countUp()方法来初始化数字动画。

$('.counter').countUp();

也可以在初始化的时候传入配置参数。

$('.counter').countUp({
    delay: 10,
    time: 2000
});
  • delay:每个数字动画的延迟时间,单位毫秒。

  • time:计数动画总的持续时间。


相关插件-动画效果,滚动
  动画效果
 21529  141

3D云 (酷!)

3D云在云端!
  动画效果
 27700  650

cs3旋转动画实现地球周转

css33d效果旋转变形
  动画效果
 9013  65

jQuery雪花飘落

jQuery雪花飘落(pc端及移动端均兼容)
  动画效果
 10820  117

讨论这个项目(16)回答他人问题或分享插件使用方法奖励jQ币

    飞专属 0
    2018/1/8 16:03:54
    重复执行的时候滚动会越来越快,清除计时器也不好使 回复
    vschenrun 0
    2017/12/29 16:21:20

    是否能动态给数据然后再动态跑,或者在数字不为0的时候触发调用动画

    回复
    每天 0
    2017/11/14 18:05:22

    连续的滚动滚动条,控制台就出现错误

    回复
    作茧自苦, 0
    2017/9/26 13:45:41

    不知道能否请您详细的说一下,这个if($this.data('counterup-nums'))  具体是加在哪一行呢?

    回复
    0
    2017/9/1 18:15:49

    滚动条进入后,能否不再加载这个动画?

    回复
    2009 0
    2017/7/24 8:58:03

    多次滚动会出现bug,怎么解决

        腹黑的坏萝卜*0
        2017/8/1 17:26:39

        没有发现

    回复
    重构 【Moka】 0
    2017/5/11 16:38:38

    Uncaught TypeError: Cannot read property 'shift' of null这个报错什么原因呢

        hangzainiuniu0
        2017/5/26 16:09:33

        我也是,你的问题和解决了么

        Coding0
        2017/7/14 20:08:20

        连续对一个dom元素couterup会报错,之间要间隔1.5秒左右

        Coding1
        2017/7/14 20:26:24

        加一个判断:if ($this.data('counterup-nums')) 

        I_仇大Xia0
        2018/1/8 11:42:34

        请问判断加在哪呢

    回复
    SiriBen 0
    2017/2/7 18:10:02

    这效果不错,滚条重新进入后又会重新调用动画,不像其它的非要刷新页面

        !!!!0
        2017/6/12 17:49:12

        滚条重新进入后数字跟之前一样吗? 我的怎么不一样

        F0rest0
        2017/8/15 9:36:10

        不知道能否请您详细的说一下,这个if($this.data('counterup-nums'))  具体是加在哪一行呢?

        米有肉0
        2018/2/2 10:03:51
        var f = function() {
            if ($this.data('counterup-nums')) {
                $this.text($this.data('counterup-nums').shift());
                if ($this.data('counterup-nums').length) {
                    setTimeout($this.data('counterup-func'), delay);
                } else {
                    delete $this.data('counterup-nums');
                    $this.data('counterup-nums', null);
                    $this.data('counterup-func', null);
                }
            }
        };

        就是最外层给个大的判断

    回复
取消回复