JavaScript实现数值自动增加动画


Posted in Javascript onDecember 28, 2017

JS实现数值自动增加动画,效果图如下:

JavaScript实现数值自动增加动画

话不多说,直接上代码,注释比较详细。

<!DOCTYPE html> 
<html> 
 
 <head> 
  <meta charset="UTF-8"> 
  <title>数字自动增加</title> 
 </head> 
 
 <body> 
  <h1 id="time">0</h1> 
 
  <script> 
   //数字自增到某一值动画参数(目标元素,自定义配置) 
   function NumAutoPlusAnimation(targetEle, options) { 
 
    /*可以自己改造下传入的参数,按照自己的需求和喜好封装该函数*/ 
    //不传配置就把它绑定在相应html元素的data-xxxx属性上吧 
    options = options || {}; 
 
    var $this = document.getElementById(targetEle), 
     time = options.time || $this.data('time'), //总时间--毫秒为单位 
     finalNum = options.num || $this.data('value'), //要显示的真实数值 
     regulator = options.regulator || 100, //调速器,改变regulator的数值可以调节数字改变的速度 
 
     step = finalNum / (time / regulator),/*每30ms增加的数值--*/ 
     count = 0, //计数器 
     initial = 0; 
 
    var timer = setInterval(function() { 
 
     count = count + step; 
 
     if(count >= finalNum) { 
      clearInterval(timer); 
      count = finalNum; 
     } 
     //t未发生改变的话就直接返回 
     //避免调用text函数,提高DOM性能 
     var t = Math.floor(count); 
     if(t == initial) return; 
 
     initial = t; 
 
     $this.innerHTML = initial; 
    }, 30); 
   } 
 
   NumAutoPlusAnimation("time", { 
    time: 1500, 
    num: 12000, 
    regulator: 50 
   }) 
  </script> 
 
 </body> 
 
</html>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript 两个窗体之间传值实现代码
Sep 25 Javascript
js给dropdownlist添加选项的小例子
Mar 04 Javascript
让JavaScript和其它资源并发下载的方法
Oct 16 Javascript
jQuery子属性过滤选择器用法分析
Feb 10 Javascript
Javascript编程之继承实例汇总
Nov 28 Javascript
jquery ezUI 双击行记录弹窗查看明细的实现方法
Jun 01 Javascript
JS实现常见的查找、排序、去重算法示例
May 21 Javascript
angularJs提交文本框数据到后台的方法
Oct 08 Javascript
javascript中关于类型判断的一些疑惑小结
Oct 14 Javascript
jQuery与原生JavaScript选择HTML元素集合用法对比分析
Nov 26 jQuery
Vue路由管理器Vue-router的使用方法详解
Feb 05 Javascript
vue 监听 Treeselect 选择项的改变操作
Aug 31 Javascript
详解如何优雅地在React项目中使用Redux
Dec 28 #Javascript
ionic3实战教程之随机布局瀑布流的实现方法
Dec 28 #Javascript
JS实现带动画的回到顶部效果
Dec 28 #Javascript
JavaScript实现元素滚动条到达一定位置循环追加内容
Dec 28 #Javascript
在nginx上部署vue项目(history模式)的方法
Dec 28 #Javascript
js实现把时间戳转换为yyyy-MM-dd hh:mm 格式(es6语法)
Dec 28 #Javascript
vue获取dom元素注意事项
Dec 28 #Javascript
You might like
Php部分常见问题总结
2006/10/09 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
2011/10/31 PHP
PHP中new static()与new self()的区别异同分析
2014/08/22 PHP
CentOS 上搭建 PHP7 开发测试环境
2017/02/26 PHP
JavaScript Eval 函数使用
2010/03/23 Javascript
Eval and new funciton not the same thing
2012/12/27 Javascript
js作用域及作用域链概念理解及使用
2013/04/15 Javascript
基于Jquery实现键盘按键监听
2014/05/11 Javascript
JS判断是否360安全浏览器极速内核的方法
2015/01/29 Javascript
jQuery使用empty()方法删除元素及其所有子元素的方法
2015/03/26 Javascript
详解基于angular路由的requireJs按需加载js
2017/01/20 Javascript
jQuery层级选择器实例代码
2017/02/06 Javascript
angularjs实现的前端分页控件示例
2017/02/10 Javascript
利用NPM淘宝的node.js镜像加速nvm
2017/03/27 Javascript
javascript 跨域问题以及解决办法
2017/07/17 Javascript
在react中使用vuex的示例代码
2018/07/30 Javascript
基于vue.js组件实现分页效果
2018/12/29 Javascript
Vue 动态添加路由及生成菜单的方法示例
2019/06/20 Javascript
node.js中npm包管理工具用法分析
2020/02/14 Javascript
VUE异步更新DOM - 用$nextTick解决DOM视图的问题
2020/11/06 Javascript
[04:41]2014DOTA2国际邀请赛 Liquid顺利突围晋级正赛
2014/07/09 DOTA
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
Python根据指定日期计算后n天,前n天是哪一天的方法
2018/05/29 Python
python pexpect ssh 远程登录服务器的方法
2019/02/14 Python
Python minidom模块用法示例【DOM写入和解析XML】
2019/03/25 Python
python可视化爬虫界面之天气查询
2019/07/03 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
2020/01/20 Python
基于python实现操作redis及消息队列
2020/08/27 Python
Python导入父文件夹中模块并读取当前文件夹内的资源
2020/11/19 Python
python制作一个简单的gui 数据库查询界面
2020/11/19 Python
英国婴儿和儿童服装网站:Vertbaudet
2018/04/02 全球购物
瑞典香水、须后水和美容产品购物网站:Parfym-Klick.se
2019/12/29 全球购物
2014年教师节寄语
2014/04/03 职场文书
机械工程师岗位职责
2014/06/16 职场文书
2015年元旦演讲稿
2014/09/12 职场文书
2016年最美孝心少年事迹材料
2016/02/26 职场文书