js实现数字跳动到指定数字


Posted in Javascript onAugust 25, 2020

本文实例为大家分享了js实现数字跳动到指定数字的具体代码,供大家参考,具体内容如下

运行结果如下:

js实现数字跳动到指定数字

<!DOCTYPE html>
 <head>
 <title>js实现数字跳动到指定数字</title>
 <style>
  h1 {font-size: 150px;text-align:center;}
  p {text-align:center;}
  button {font-size:40px;}
 </style>
 </head>
 <body>
 <h1 id="number">0</h1>
 <p>
  <button onclick="start()">开始计数</button>
 </p>
 </body>
 <script>
 /*
 * startNum 代表要跳动的初始数字
 * targetNum 代表要跳动到的数字
 * time  代表要跳动需要花费的时间
 * selector 代表要跳动元素的选择器
 */
 const $setJumpNumber = (startNum, targetNum, time = 1, selector) => {
  let dom = document.querySelector(selector);
  let originNum = startNum;
  let stepNum = 0;
  let timeNum = time; 
  dom.innerHTML = startNum;
 
  let timeId = setInterval(() => {
  if (originNum < targetNum) {
   timeNum -= 0.001;
   let strNum = originNum.toString();
   // 数字比较少的时候直接用 + 1; 数字很大直接 +1 要很久才能调到最对应的数字,所有后三位数随机跳动的方式进行模拟生成
   if (targetNum.toString().length < 6) {
   stepNum += 1; // 这样才可以实现越跳越快的效果
   originNum = originNum + stepNum;
   dom.innerHTML = originNum;
   } else {
   stepNum += 500; // 这样才可以实现越跳越快的效果
   originNum = originNum + stepNum;
   dom.innerHTML = strNum.substr(0, strNum.length - 3) + Math.floor(Math.random()*10) + Math.floor(Math.random()*10) + Math.floor(Math.random()*10);
   }
  } else {
   dom.innerHTML = targetNum;
   clearInterval(timeId);
  }
  }, timeNum);
 };
 
 function start () {
  $setJumpNumber(11, 218983423, 1, 'h1');
 };
 
 </script>
</html>

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

Javascript 相关文章推荐
JS DOM 操作实现代码
Aug 01 Javascript
js使用递归解析xml
Dec 12 Javascript
node.js中的fs.lchmod方法使用说明
Dec 16 Javascript
使用javascript实现雪花飘落的效果
Jan 13 Javascript
JavaScript DOM 学习总结(五)
Nov 24 Javascript
Javascript对象字面量的理解
Jun 22 Javascript
神级程序员JavaScript300行代码搞定汉字转拼音
May 20 Javascript
微信小程序的分类页面制作
Jun 27 Javascript
JavaScript变量类型以及变量作用域详解
Aug 14 Javascript
JQuery 选择器、DOM节点操作练习实例
Sep 28 jQuery
js 原生判断内容区域是否滚动到底部的实例代码
Nov 15 Javascript
JS中如何轻松遍历对象属性的方式总结
Aug 06 Javascript
js实现点击选项置顶动画效果
Aug 25 #Javascript
理解JavaScript中的对象
Aug 25 #Javascript
一文秒懂JavaScript构造函数、实例、原型对象以及原型链
Aug 25 #Javascript
node.js基础知识汇总
Aug 25 #Javascript
基于JS实现快速读取TXT文件
Aug 25 #Javascript
Vue实现简单的拖拽效果
Aug 25 #Javascript
浅谈JavaScript节流和防抖函数
Aug 25 #Javascript
You might like
Content-type 的说明
2006/10/09 PHP
php正则表达式使用的详细介绍
2013/04/27 PHP
PHP7常量数组用法分析
2016/09/26 PHP
js技巧--转义符&quot;\&quot;的妙用
2007/01/09 Javascript
jQuery 渐变下拉菜单
2009/12/15 Javascript
JQuery中的ready函数冲突的解决方法
2010/05/17 Javascript
深入理解Javascript闭包 新手版
2010/12/28 Javascript
JavaScript中使用指数方法Math.exp()的简介
2015/06/15 Javascript
js多功能分页组件layPage使用方法详解
2016/05/19 Javascript
jQuery插件扩展extend的简单实现原理
2016/06/24 Javascript
妙用Bootstrap的 popover插件实现校验表单提示功能
2016/08/29 Javascript
javascript中的后退和刷新实现方法
2016/11/10 Javascript
Bootstrap Modal遮罩弹出层代码分享
2016/11/21 Javascript
JavaScript实现的斑马线表格效果【隔行变色】
2017/09/18 Javascript
详解Node.js模板引擎Jade入门
2018/01/19 Javascript
微信小程序实现banner图轮播效果
2020/06/28 Javascript
详解vue中多个有顺序要求的异步操作处理
2019/10/29 Javascript
微信小程序实现简单的select下拉框
2020/11/23 Javascript
vue常用高阶函数及综合实例
2021/02/25 Vue.js
Python网络爬虫与信息提取(实例讲解)
2017/08/29 Python
python组合无重复三位数的实例
2018/11/13 Python
python文本数据处理学习笔记详解
2019/06/17 Python
Windows平台Python编程必会模块之pywin32介绍
2019/10/01 Python
CSS3实现银灰色动画效果的导航菜单代码
2015/09/01 HTML / CSS
html5页面结构_动力节点Java学院整理
2017/07/10 HTML / CSS
Lee牛仔裤澳大利亚官网:美国著名牛仔裤品牌
2017/09/02 全球购物
马来西亚与新加坡长途巴士售票网站:BusOnlineTicket.com
2018/11/05 全球购物
工业自动化专业毕业生推荐信
2013/11/18 职场文书
个人应聘自我评价分享
2013/11/18 职场文书
中层领导干部群众路线对照检查材料思想汇报
2014/10/02 职场文书
村主任“四风”问题个人整改措施
2014/10/04 职场文书
护士2015年终工作总结
2015/04/29 职场文书
贷款工作证明模板
2015/06/12 职场文书
告诉你创业计划书的8个实用技巧
2019/07/12 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
Redis特殊数据类型Geospatial地理空间
2022/06/01 Redis