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 分页全选或反选标识实现代码
Aug 09 Javascript
JS中Iframe之间传值的方法
Mar 11 Javascript
javascript浏览器窗口之间传递数据的方法
Jan 20 Javascript
解决jQuery上传插件Uploadify出现Http Error 302错误的方法
Dec 18 Javascript
Kindeditor在线文本编辑器如何过滤HTML
Apr 14 Javascript
通过网页查看JS源码中汉字显示乱码的解决方法
Oct 26 Javascript
node.js学习之交互式解释器REPL详解
Dec 08 Javascript
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
Jun 09 jQuery
Vue 路由切换时页面内容没有重新加载的解决方法
Sep 01 Javascript
简单了解JavaScript弹窗实现代码
May 07 Javascript
javascript实现智能手环时间显示
Sep 18 Javascript
vue3 自定义图片放大器效果的示例代码
Jul 23 Vue.js
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
php初始化对象和析构函数的简单实例
2014/03/11 PHP
使用Thinkphp框架开发移动端接口
2015/08/05 PHP
WordPress中使主题支持小工具以及添加插件启用函数
2015/12/22 PHP
php快速排序原理与实现方法分析
2016/05/26 PHP
asp.net下利用js实现返回上一页的实现方法小集
2009/11/24 Javascript
js面向对象 多种创建对象方法小结
2012/05/21 Javascript
jQuery实现的经典竖向伸缩菜单效果代码
2015/09/24 Javascript
怎么限制input的text里输入的值只能是数字(正则、js)
2016/05/16 Javascript
Angularjs 实现分页功能及示例代码
2016/09/14 Javascript
js 提交form表单和设置form表单请求路径的实现方法
2016/10/25 Javascript
JS中解决谷歌浏览器记住密码输入框颜色改变功能
2017/02/13 Javascript
详解Vue 非父子组件通信方法(非Vuex)
2017/05/24 Javascript
JS按条件 serialize() 对应标签的使用方法
2017/07/24 Javascript
浅谈Vue内置component组件的应用场景
2018/03/27 Javascript
详解给Vue2路由导航钩子和axios拦截器做个封装
2018/04/10 Javascript
浅谈Webpack打包优化技巧
2018/06/12 Javascript
Apache如何部署django项目
2017/05/21 Python
python 动态生成变量名以及动态获取变量的变量名方法
2019/01/20 Python
不到40行代码用Python实现一个简单的推荐系统
2019/05/10 Python
Django ORM 查询管理器源码解析
2019/08/05 Python
详解使用django-mama-cas快速搭建CAS服务的实现
2019/10/30 Python
Python 之 Json序列化嵌套类方式
2020/02/27 Python
详解pandas.DataFrame.plot() 画图函数
2020/06/14 Python
CSS3实现圆角、阴影、透明效果并兼容各大浏览器
2014/08/08 HTML / CSS
美国隐形眼镜零售商:LensPure
2019/03/10 全球购物
后勤主管工作职责
2013/12/07 职场文书
生物科学系大学生的自我评价
2013/12/20 职场文书
普通简短的个人自我评价
2014/02/15 职场文书
年级组长自我鉴定
2014/02/22 职场文书
贷款承诺书范文
2014/05/19 职场文书
集团财务总监岗位职责
2015/04/03 职场文书
演讲比赛通讯稿
2015/07/18 职场文书
2016新年致辞
2015/08/01 职场文书
初一军训感言
2015/08/01 职场文书
2016年度继续教育学习心得体会
2016/01/19 职场文书
解决WINDOWS电脑开机后桌面没有任何图标
2022/04/09 数码科技