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 相关文章推荐
摘自启点的main.js
Apr 20 Javascript
让任务管理器中的CPU跳舞的js代码
Nov 01 Javascript
基于jquery的合并table相同单元格的插件(精简版)
Apr 05 Javascript
js获取IFRAME当前的URL的方法
Nov 13 Javascript
JQUERY 设置SELECT选中项代码
Feb 07 Javascript
jQuery实现带分组数据的Table表头排序实例分析
Nov 24 Javascript
JavaScript中数组添加值和访问值常见问题
Feb 06 Javascript
jQuery遮罩层实例讲解
May 11 jQuery
javascript 玩转Date对象(实例讲解)
Jul 11 Javascript
详解VUE中v-bind的基本用法
Jul 13 Javascript
bootstrap table sum总数量统计实现方法
Oct 29 Javascript
教你30秒发布一个TypeScript包到NPM的方法步骤
Jul 22 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中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
2010/08/21 PHP
php 连接mysql连接被重置的解决方法
2011/02/15 PHP
php无限遍历目录示例
2014/02/21 PHP
Linux中用PHP判断程序运行状态的2个方法
2014/05/04 PHP
基于CakePHP实现的简单博客系统实例
2015/06/28 PHP
利用PHP脚本在Linux下用md5函数加密字符串的方法
2015/06/29 PHP
php遍历目录下文件并按修改时间排序操作示例
2019/07/12 PHP
php输出文字乱码的解决方法
2019/10/04 PHP
PHP时间类完整代码实例
2021/02/26 PHP
JavaScript 快捷键设置实现代码
2009/03/13 Javascript
javascript Demo模态窗口
2009/12/06 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
用js闭包的方法实现多点标注冒泡示例
2014/05/29 Javascript
浅谈javascript函数式编程
2015/09/06 Javascript
jquery读写cookie操作实例分析
2015/12/24 Javascript
Javascript中 带名 匿名 箭头函数的重要区别(推荐)
2017/01/29 Javascript
JavaScript数组的5种迭代方法
2017/09/29 Javascript
浅谈angular2路由预加载策略
2017/10/04 Javascript
Angular2的管道Pipe的使用方法
2017/11/07 Javascript
使用node打造自己的命令行工具方法教程
2018/03/26 Javascript
nodejs中用npm初始化来创建package.json的实例讲解
2018/10/10 NodeJs
electron-vue利用webpack打包实现多页面的入口文件问题
2019/05/12 Javascript
一些可能会用到的Node.js面试题
2019/06/15 Javascript
用Python制作检测Linux运行信息的工具的教程
2015/04/01 Python
Python中isnumeric()方法的使用简介
2015/05/19 Python
详谈Python基础之内置函数和递归
2017/06/21 Python
Python和Sublime整合过程图示
2019/12/25 Python
Python的pygame安装教程详解
2020/02/10 Python
幼儿园新学期寄语
2014/01/18 职场文书
环境科学专业优秀毕业生自荐书
2014/02/03 职场文书
乡镇干部十八大感言
2014/02/17 职场文书
食堂标语大全
2014/06/11 职场文书
2015年世界卫生日活动总结
2015/02/09 职场文书
《叶问2》观后感
2015/06/15 职场文书
公司晚会主持词
2019/04/17 职场文书
MongoDB 常用的crud操作语句
2021/06/20 MongoDB