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 相关文章推荐
将HTML自动转为JS代码
Jun 26 Javascript
google 搜索框添加关键字实现代码
Apr 24 Javascript
鼠标滑过出现预览的大图提示效果
Feb 26 Javascript
Jquery的基本对象转换和文档加载用法实例
Feb 25 Javascript
JS图片定时翻滚效果实现方法
Jun 21 Javascript
vue数据双向绑定原理解析(get &amp; set)
Mar 08 Javascript
用js实现每隔一秒刷新时间的实例(含年月日时分秒)
Oct 25 Javascript
Vue 按键修饰符处理事件的方法
May 04 Javascript
js 根据对象数组中的属性进行排序实现代码
Sep 12 Javascript
vue用elementui写form表单时,在label里添加空格操作
Aug 13 Javascript
javascript实现电商放大镜效果
Nov 23 Javascript
React中使用Vditor自定义图片详解
Dec 25 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
thinkphp验证码显示不出来的解决方法
2014/03/29 PHP
php通过ajax实现双击table修改内容
2014/04/28 PHP
php获取访问者IP地址汇总
2015/04/24 PHP
实例简介PHP的一些高级面向对象编程的特性
2015/11/27 PHP
PHP数组游标实现对数组的各种操作详解
2016/01/26 PHP
一个简单的php路由类
2016/05/29 PHP
浅析PHP数据导出知识点
2018/02/17 PHP
php实现微信分享朋友链接功能
2019/02/18 PHP
AngularJS初始化静态模板详解
2016/01/14 Javascript
Extjs实现下拉菜单效果
2016/04/01 Javascript
Extjs 点击复选框在表格中增加相关信息行
2016/07/12 Javascript
Node.JS利用PhantomJs抓取网页入门教程
2017/05/19 Javascript
AngularJS实现单一页面内设置跳转路由的方法
2017/06/28 Javascript
详解webpack3如何正确引用并使用jQuery库
2017/08/26 jQuery
Node做中转服务器转发接口
2017/10/18 Javascript
JS生成随机打乱数组的方法示例
2017/12/23 Javascript
Vue封装一个简单轻量的上传文件组件的示例
2018/03/21 Javascript
微信小程序实现多选框全选与取消全选功能示例
2019/05/14 Javascript
javascript json对象小技巧之键名作为变量用法分析
2019/11/11 Javascript
原生js实现的金山打字小游戏(实例代码详解)
2020/03/16 Javascript
[00:38]TI珍贵瞬间系列(二):笑
2020/08/26 DOTA
python实现simhash算法实例
2014/04/25 Python
跟老齐学Python之正规地说一句话
2014/09/28 Python
Python使用scrapy采集数据过程中放回下载过大页面的方法
2015/04/08 Python
对python中的iter()函数与next()函数详解
2018/10/18 Python
对python中的try、except、finally 执行顺序详解
2019/02/18 Python
Tensorflow tf.nn.atrous_conv2d如何实现空洞卷积的
2020/04/20 Python
15款Python编辑器的优缺点,别再问我“选什么编辑器”啦
2020/10/19 Python
css3 边框、背景、文本效果的实现代码
2018/03/21 HTML / CSS
AmazeUI导航的示例代码
2020/08/14 HTML / CSS
超市开店计划书
2014/04/26 职场文书
公民授权委托书范本
2014/09/17 职场文书
毕业证明书
2015/06/19 职场文书
信息技术教研组工作总结
2015/08/13 职场文书
Redis IP地址的绑定的实现
2021/05/08 Redis
使用Python+OpenCV进行卡类型及16位卡号数字的OCR功能
2021/08/30 Python