数字滚动增长小库-NRR.js

1,992 阅读1分钟

小库简谈

NumberRaisingRolling
NRR-a tiny lib to set number rolling raise

一个极简的数字滚动增长小库😀,够用👏!
一起改造来 PR 一下,顺手 star
代码细节☞ github传送门

这个功能的封装其实还谈不上是库,只是为了名字高大上一点,写的时候主要通过以下两种方式来实现:

  • setInterval
    • 优点:实现简单
    • 缺点:动画流畅度体验差
  • requestAnimationFrame
    • 优点:动画流畅度体验好
    • 缺点:速度上的控制让我头痛

划重点:不如大家帮忙一起提一下如何优化速度控制方法。
我的实现细节可以查看 github 源码

小库调用Demo

  • HTML中引入库
    <div>
      <h1>NRR-Demo</h1>
      <h1 id="noHd1"></h1>
    </div>
    <script src="NumberRaiseRolling.js"></script>
    <script>
      //配置数据
      var configData = {
        datas:[  // required config
          {numContanier:"#noHd1", numData:'7954229'}
        ],
        speed:"fast", // optional config: (slow | fast | normal), default 'normal'
        type:"animation" //optional config: (anmation | interval), default 'interval'
      }
      //调用
      FoxRollNumber(configData);
    </script>
    
    
  • 效果图
    预览图