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封装的不错的选项卡效果代码
Feb 15 Javascript
jquery触发a标签跳转事件示例代码
Jul 21 Javascript
深入理解JavaScript系列(39):设计模式之适配器模式详解
Mar 04 Javascript
JQuery select(下拉框)操作方法汇总
Apr 15 Javascript
JS/jQuery判断DOM节点是否存在的简单方法
Nov 24 Javascript
jQuery实现倒计时(倒计时年月日可自己输入)
Dec 02 Javascript
js实现图片加载淡入淡出效果
Apr 07 Javascript
老生常谈jacascript DOM节点获取
Apr 17 Javascript
express如何使用session与cookie的方法
Jan 30 Javascript
Nginx设置为Node.js的前端服务器方法总结
Mar 27 Javascript
Node.js Domain 模块实例详解
Mar 18 Javascript
JavaScript中isPrototypeOf函数
Nov 07 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
laravel withCount 统计关联数量的方法
2019/10/10 PHP
Javascript实例教程(19) 使用HoTMetal(4)
2006/12/23 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
js简单实现让文本框内容逐个字的显示出来
2013/10/22 Javascript
巧用js提交表单轻松解决一个页面有多个提交按钮
2013/11/17 Javascript
JQUERY 设置SELECT选中项代码
2014/02/07 Javascript
js实现遮罩层划出效果是生成div而不是显示
2014/07/29 Javascript
轻松创建nodejs服务器(8):非阻塞是如何实现的
2014/12/18 NodeJs
JavaScript中的console.time()函数详细介绍
2014/12/29 Javascript
js+CSS实现模拟华丽的select控件下拉菜单效果
2015/09/01 Javascript
JavaScript编程中布尔对象的基本使用
2015/10/25 Javascript
JavaScript中的Object对象学习教程
2016/05/20 Javascript
window.open不被拦截的简单实现代码(推荐)
2016/08/04 Javascript
BootStrap实现带有增删改查功能的表格(DEMO详解)
2016/10/26 Javascript
AngularJS验证信息框架的封装插件用法【w5cValidator扩展插件】
2016/11/03 Javascript
浅谈Koa服务限流方法实践
2017/10/23 Javascript
基于vue通用表单解决方案的思考与分析
2019/03/16 Javascript
手把手教你 CKEDITOR 4 实现Dialog 内嵌 IFrame操作详解
2019/06/18 Javascript
react+redux仿微信聊天界面
2019/06/21 Javascript
原生JS实现相邻月份日历
2020/10/13 Javascript
Python减少循环层次和缩进的技巧分析
2016/03/15 Python
python针对excel的操作技巧
2018/03/13 Python
Python中实现单例模式的n种方式和原理
2018/11/14 Python
Python基于datetime或time模块分别获取当前时间戳的方法实例
2019/02/19 Python
django获取from表单multiple-select的value和id的方法
2019/07/19 Python
Python操作MySQL数据库实例详解【安装、连接、增删改查等】
2020/01/17 Python
python求一个字符串的所有排列的实现方法
2020/02/04 Python
Pycharm 2020.1 版配置优化的详细教程
2020/08/07 Python
Python3+selenium配置常见报错解决方案
2020/08/28 Python
大学生社团活动总结
2014/04/26 职场文书
工商企业管理应届生求职信
2014/05/04 职场文书
班组拓展活动方案
2014/08/14 职场文书
酒店管理失职检讨书
2014/09/16 职场文书
专升本学生毕业自我鉴定
2014/10/04 职场文书
实现一个简单得数据响应系统
2021/11/11 Javascript
box-shadow单边阴影的实现
2023/05/21 HTML / CSS