js实现数字递增特效【仿支付宝我的财富】


Posted in Javascript onMay 05, 2017

上周五应着公司临时需求,一天的时间解决掉官网(ps:比较简单哈哈),需求里面有一个特效就是数字递增到指定的数值,其实JS写也不复杂的,但是我发现一个js小插件,这个插件轻巧简单,用起来也非常简单实用。在这里分享给小盆友们吧,喜欢的直接拿走。

js实现数字递增特效【仿支付宝我的财富】

上面就是这个插件的效果,我们来看一下怎么使用的吧

第一: HTML部分这里简单列举一个

<div class="counter col_fourth">
  <h2 class="timer count-title" id="count-number" data-to="300" data-speed="1500"></h2>
  <p class="count-text ">小月博客</p>
 </div>

上面我们来了解两个关键的东西:

  • data-to   这个属性控制你最终要递增的数值是多少
  • data-speed    这个看英文的意思就很清楚了就是表示数据递增的速度了

ps: 这里的class和id  根据大家各自的修改去调整就好了,

第二:JS部分也是插件的核心代码

$.fn.countTo = function(a) {
  a = a || {};
  return $(this).each(function() {
   var c = $.extend({},
   $.fn.countTo.defaults, {
    from: $(this).data("from"),
    to: $(this).data("to"),
    speed: $(this).data("speed"),
    refreshInterval: $(this).data("refresh-interval"),
    decimals: $(this).data("decimals")
   }, a);
  var h = Math.ceil(c.speed / c.refreshInterval),
  i = (c.to - c.from) / h;
  var j = this,
  f = $(this),
  e = 0,
  g = c.from,
  d = f.data("countTo") || {};
  f.data("countTo", d);
  if (d.interval) {
   clearInterval(d.interval)
  }
  d.interval = setInterval(k, c.refreshInterval);
  b(g);
  function k() {
   g += i;
   e++;
   b(g);
   if (typeof(c.onUpdate) == "function") {
    c.onUpdate.call(j, g)
   }
   if (e >= h) {
    f.removeData("countTo");
    clearInterval(d.interval);
    g = c.to;
    if (typeof(c.onComplete) == "function") {
     c.onComplete.call(j, g)
    }
   }
  }
  function b(m) {
   var l = c.formatter.call(j, m, c);
   f.html(l)
  }
 })
};
$.fn.countTo.defaults = {
  from: 0,
  to: 0,
  speed: 1000,
  refreshInterval: 100,
  decimals: 0,
  formatter: formatter,
  onUpdate: null,
  onComplete: null
};
function formatter(b, a) {
  return b.toFixed(2)
}
$("#count-number").data("countToOptions", {
  formatter: function(b, a) {
   return b.toFixed(2).replace(/\B(?=(?:\d{3})+(?!\d))/g, ",")
  }
});
$(".timer").each(count);
function count(a) {
  var b = $(this);
  a = $.extend({},
  a || {},
  b.data("countToOptions") || {});
  b.countTo(a)
};

以上就是代码的全部了,css部分就不在这里显示了,demo下载的小伙伴在下面点击下载吧!

其实这个插件可扩展性很大的,至于小伙伴喜欢什么样子的显示自己动手改造吧!

demo下载请点击

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
js 父窗口控制子窗口的行为-打开,关闭,重定位,回复
Apr 20 Javascript
Jquery实现仿腾讯微博发表广播
Nov 17 Javascript
JavaScript实现信用卡校验方法
Apr 07 Javascript
浅谈js中对象的使用
Aug 11 Javascript
移动端js触摸事件详解
Sep 18 Javascript
详解利用jsx写vue组件的方法示例
Jul 17 Javascript
JavaScrip数组删除特定元素的几种方法总结
Sep 06 Javascript
JS实现定时任务每隔N秒请求后台setInterval定时和ajax请求问题
Oct 15 Javascript
详解webpack 入门与解析
Apr 09 Javascript
JavaScript组合模式---引入案例分析
May 23 Javascript
Node.js 深度调试方法解析
Jul 28 Javascript
vue2和vue3的v-if与v-for优先级对比学习
Oct 10 Javascript
js和jquery中获取非行间样式
May 05 #jQuery
值得分享和收藏的xmlplus组件学习教程
May 05 #Javascript
微信小程序中多个页面传参通信的学习与实践
May 05 #Javascript
微信小程序 开发之全局配置
May 05 #Javascript
jquery实现tab选项卡切换效果(悬停、下方横线动画位移)
May 05 #jQuery
微信小程序 图片上传实例详解
May 05 #Javascript
微信小程序实现登录页云层漂浮的动画效果
May 05 #Javascript
You might like
PHP新手上路(十四)
2006/10/09 PHP
选择PHP作为网站开发语言的原因分享
2012/01/03 PHP
PHP爆绝对路径方法收集整理
2012/09/17 PHP
一个完整的PHP类包含的七种语法说明
2015/06/04 PHP
js解析与序列化json数据(三)json的解析探讨
2013/02/01 Javascript
JS中showModalDialog 的使用解析
2013/04/17 Javascript
javascript scrollTop正解使用方法
2013/11/14 Javascript
常用的JS验证和函数汇总
2014/12/23 Javascript
AngularJS中实现显示或隐藏动画效果的方式总结
2015/12/31 Javascript
一个例子轻松学会Vue.js
2017/01/02 Javascript
利用Vue.js实现checkbox的全选反选效果
2017/01/18 Javascript
vue2.0实现分页组件的实例代码
2017/06/22 Javascript
jQuery Ajax向服务端传递数组参数值的实例代码
2017/09/03 jQuery
tween.js缓动补间动画算法示例
2018/02/13 Javascript
JS从非数组对象转数组的方法小结
2018/03/26 Javascript
解决layer 关闭当前弹窗 关闭遮罩层 input值获取不到的问题
2019/09/25 Javascript
vue 插槽简介及使用示例
2020/11/19 Vue.js
Python3学习笔记之列表方法示例详解
2017/10/06 Python
使用python对文件中的单词进行提取的方法示例
2018/12/21 Python
python创造虚拟环境方法总结
2019/03/04 Python
Django发送邮件和itsdangerous模块的配合使用解析
2019/08/10 Python
python字符串格式化方式解析
2019/10/19 Python
python计算n的阶乘的方法代码
2019/10/25 Python
opencv python如何实现图像二值化
2020/02/03 Python
matplotlib绘制多子图共享鼠标光标的方法示例
2021/01/08 Python
澳大利亚宠物食品和药物在线:Jumbo Pets
2018/03/24 全球购物
台湾母婴用品限时团购:妈咪爱
2018/08/03 全球购物
优秀信贷员先进事迹
2014/01/31 职场文书
大学生党校培训心得体会
2014/09/11 职场文书
2014财务年终工作总结
2014/12/08 职场文书
2015年国税春训心得体会
2015/03/09 职场文书
2016教师国培研修感言
2015/12/08 职场文书
个人房屋租赁合同(标准范本)
2019/09/16 职场文书
想创业成功,需要掌握这些要点
2019/12/06 职场文书
Python中os模块的简单使用及重命名操作
2021/04/17 Python
解决numpy和torch数据类型转化的问题
2021/05/23 Python