count.js 812 B

12345678910111213141516171819202122232425262728293031323334353637
  1. layui.define(['jquery', 'element'], function(exports) {
  2. "use strict";
  3. var MOD_NAME = 'count',
  4. $ = layui.jquery,
  5. element = layui.element;
  6. var count = new function() {
  7. this.up = function(targetEle, options) {
  8. options = options || {};
  9. var $this = document.getElementById(targetEle),
  10. time = options.time,
  11. finalNum = options.num,
  12. regulator = options.regulator,
  13. step = finalNum / (time / regulator),
  14. count = 0.00,
  15. initial = 0;
  16. var timer = setInterval(function() {
  17. count = count + step;
  18. if (count >= finalNum) {
  19. clearInterval(timer);
  20. count = finalNum;
  21. }
  22. var t = count.toFixed(options.bit?options.bit:0);;
  23. if (t == initial) return;
  24. initial = t;
  25. $this.innerHTML = initial;
  26. }, 30);
  27. }
  28. }
  29. exports(MOD_NAME, count);
  30. });