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 相关文章推荐
js操作select控件的几种方法
Jun 02 Javascript
Jquery 获取checkbox的checked问题
Nov 16 Javascript
利用js(jquery)操作Cookie的方法说明
Dec 19 Javascript
图文详解Heap Sort堆排序算法及JavaScript的代码实现
May 04 Javascript
基于JavaScript实现下拉列表左右移动代码
Feb 07 Javascript
详解基于vue-router的动态权限控制实现方案
Sep 28 Javascript
基于 Vue 实现一个酷炫的 menu插件
Nov 14 Javascript
全新打包工具parcel零配置vue开发脚手架
Jan 11 Javascript
jquery中为什么能用$操作
Jun 18 jQuery
JS数组方法join()用法实例分析
Jan 18 Javascript
vue中keep-alive内置组件缓存的实例代码
Apr 16 Javascript
jQuery 添加元素和删除元素的方法
Jul 15 jQuery
详解如何优雅地在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+javascript实现二级级联菜单的制作
2008/05/06 PHP
[原创]PHP global全局变量经典应用与注意事项分析【附$GLOBALS用法对比】
2019/07/12 PHP
在laravel框架中使用model层的方法
2019/10/08 PHP
window.onload 加载完毕的问题及解决方案(上)
2009/07/09 Javascript
jquery高效反选具体实现
2013/05/05 Javascript
基于jQuery实现表单提交验证
2014/11/24 Javascript
jQuery Ajax中的事件详细介绍
2015/04/16 Javascript
jquery实现图片上传之前预览的方法
2015/07/11 Javascript
Jquery左右滑动插件之实现超级炫酷动画效果附源码下载
2015/12/02 Javascript
JavaScript运行过程中的“预编译阶段”和“执行阶段”
2015/12/16 Javascript
jquery 动态合并单元格的实现方法
2016/08/26 Javascript
WebView启动支付宝客户端支付失败的问题小结
2017/01/11 Javascript
BootStrap表单时间选择器详解
2017/05/09 Javascript
JavaScript实现省市联动过程中bug的解决方法
2017/12/04 Javascript
详解vue-cli 构建项目 vue-cli请求后台接口 vue-cli使用axios、sass、swiper
2018/05/28 Javascript
支付宝小程序实现省市区三级联动
2020/06/21 Javascript
Vant picker 多级联动操作
2020/11/02 Javascript
Python json 错误xx is not JSON serializable解决办法
2017/03/15 Python
Python爬取网易云音乐热门评论
2017/03/31 Python
Python入门之三角函数sin()函数实例详解
2017/11/08 Python
python高阶爬虫实战分析
2018/07/29 Python
Python Django简单实现session登录注销过程详解
2019/08/06 Python
解决Python对齐文本字符串问题
2019/08/28 Python
Python Opencv提取图片中某种颜色组成的图形的方法
2019/09/19 Python
Python 用三行代码提取PDF表格数据
2019/10/13 Python
关于ResNeXt网络的pytorch实现
2020/01/14 Python
浅谈spring boot 集成 log4j 解决与logback冲突的问题
2020/02/20 Python
Python控制台实现交互式环境执行
2020/06/09 Python
加拿大花店:1800Flowers.ca
2016/11/16 全球购物
英国口碑最好的的维他命胶囊品牌:Myvitamins(有中文站)
2016/12/03 全球购物
ASOS西班牙官网:英国在线时尚和美容零售商
2020/01/10 全球购物
卖车协议书
2014/04/21 职场文书
日语系毕业求职信
2014/07/27 职场文书
美丽心灵观后感
2015/06/01 职场文书
巴黎圣母院观后感
2015/06/10 职场文书
2016年清明节网上祭英烈活动总结
2016/04/01 职场文书