JavaScript实现简单进度条效果


Posted in Javascript onMarch 25, 2020

本文实例为大家分享了JavaScript实现进度条效果的具体代码,供大家参考,具体内容如下

效果图:

JavaScript实现简单进度条效果

简单说一下思路:

主要就是进度条的宽度的动态调整!要用到JS的间隔定时器 setInterval( )

setInterval( )
功能:每隔指定时间调用一次函数
参数:函数,时间间隔
返回值:定时器编号(数字)

想让它到一定的宽度就停止,那么需要设定它的最大宽度,在它外面套一个有宽度的元素就可以啦!这样的话控制它在父元素里的百分比就行了。
在函数里进行判断是否道达指定宽度,没有到达就增长,否则就停止。
为了便于理解,后面JS代码中也有注释

1.HTML结构

<div id="box"> 
 <p id="progress"></p> //不断增长的进度条
 <span id=n>0%</span> //百分比的显示
</div>
<button id="btn">开 始</button> //按钮

2.CSS样式

<style>
 #box{
  width: 500px;
  height: 30px;
  border: black 2px solid;
  position: relative;
 }
 #progress{
  width: 0px;
  height: 30px;
  background: pink;
  
 }
 #btn{
  width: 50px;
  height: 30px;
 }
 #n{
  position: absolute;
  top: 5px;
  right: 0;
 }
</style>

重点来啦!

3.JavaScript代码

<script>
 //通过id获取元素
 var progress = document.getElementById('progress')
 var n = document.getElementById('n')
 var btn = document.getElementById('btn')

 //定义函数,并用元素的单击事件触发函数
 btn.onclick = function(){
  var w = 0 //定义变量,用来存储进度条的长度

  //启动定时器
  var t = setInterval(function(){
  w += 10 //每隔指定时间,让进度条长度增加10
  if(w >= 100){ //判断进度条的长度有没有等于或大于指定长度
   w = 100 
   clearInterval(t) //条件成立,清除定时器
  }
  progress.style.width = w + '%' //给元素赋值变化后的宽度
  n.innerHTML = w + '%' //同时百分比也要增长
  },100) //每隔0.1秒执行一次
 }
</script>

这是我的学习记录,分享给大家
也希望对看到这篇博文的你有帮助!!!

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

Javascript 相关文章推荐
javascript中的undefined 与 null 的区别  补充篇
Mar 17 Javascript
JavaScript定义变量和变量优先级问题探讨
Oct 11 Javascript
a标签的href与onclick事件的区别详解
Nov 12 Javascript
node.js中的http.response.writeHead方法使用说明
Dec 14 Javascript
node.js解决获取图片真实文件类型的问题
Dec 20 Javascript
JavaScript操作HTML DOM节点的基础教程
Mar 11 Javascript
Vuejs第六篇之Vuejs与form元素实例解析
Sep 05 Javascript
javascript实现文字无缝滚动效果
Aug 26 Javascript
微信小程序 swiper组件构建轮播图的实例
Sep 20 Javascript
jQuery对底部导航进行跳转并高亮显示的实例代码
Apr 23 jQuery
浅谈laytpl 模板空值显示null的解决方法及简单的js表达式
Sep 19 Javascript
原生JS实现留言板
Mar 26 Javascript
JavaScript实现随机点名程序
Mar 25 #Javascript
微信小程序分享小程序码的生成(带参数)以及参数的获取
Mar 25 #Javascript
JS实现网页时钟特效
Mar 25 #Javascript
js实现小时钟效果
Mar 25 #Javascript
vue页面更新patch的实现示例
Mar 25 #Javascript
微信小程序scroll-view隐藏滚动条的方法详解
Mar 25 #Javascript
微信小程序点击item使之滚动到屏幕中间位置
Mar 25 #Javascript
You might like
一个基于PDO的数据库操作类
2011/03/24 PHP
php下通过IP获取地理位置的代码(小偷程序)
2011/06/09 PHP
Window下PHP三种运行方式图文详解
2013/06/11 PHP
PHP递归复制、移动目录的自定义函数分享
2014/11/18 PHP
yii2学习教程之5种内置行为类详解
2017/08/03 PHP
PHP设计模式之迭代器模式Iterator实例分析【对象行为型】
2020/04/26 PHP
jQuery的实现原理的模拟代码 -4 重要的扩展函数 extend
2010/08/03 Javascript
javascript forEach通用循环遍历方法
2010/10/11 Javascript
让人期待的2011年度最佳 jQuery 插件分享
2012/03/16 Javascript
JS冒泡事件的快速解决方法
2013/12/16 Javascript
javascript的事件触发器介绍的实现
2014/06/05 Javascript
js中函数调用的两种常用方法使用介绍
2014/07/17 Javascript
15个jquery常用方法、小技巧分享
2015/01/13 Javascript
深入理解JavaScript系列(39):设计模式之适配器模式详解
2015/03/04 Javascript
JS基于HTML5的canvas标签实现炫目的色相球动画效果实例
2016/08/24 Javascript
JQ选择器_选择同类元素的第N个子元素的实现方法
2016/09/08 Javascript
Ext JS 实现建议词模糊动态搜索功能
2017/05/13 Javascript
JavaScript实现删除数组重复元素的5种常用高效算法总结
2018/01/18 Javascript
nodejs 日志模块winston的使用方法
2018/05/02 NodeJs
解决Nodejs全局安装模块后找不到命令的问题
2018/05/15 NodeJs
[01:02:45]完美世界DOTA2联赛 LBZS vs Forest 第三场 11.07
2020/11/09 DOTA
把项目从Python2.x移植到Python3.x的经验总结
2015/04/20 Python
对于Python的框架中一些会话程序的管理
2015/04/20 Python
使用PyCharm配合部署Python的Django框架的配置纪实
2015/11/19 Python
Python实现的弹球小游戏示例
2017/08/01 Python
Python编程深度学习计算库之numpy
2018/12/28 Python
对Python3之进程池与回调函数的实例详解
2019/01/22 Python
python实现微信每日一句自动发送给喜欢的人
2019/04/29 Python
python+Django实现防止SQL注入的办法
2019/10/31 Python
python GUI库图形界面开发之PyQt5多线程中信号与槽的详细使用方法与实例
2020/03/08 Python
美国运动鞋和运动服零售商:Footaction
2017/04/07 全球购物
运动服饰每月订阅盒:Ellie
2018/04/29 全球购物
广告学专业应届生求职信
2013/10/01 职场文书
采购部主管岗位职责
2014/01/01 职场文书
幼儿园迎新生欢迎词
2015/09/30 职场文书
上手简单,功能强大的Python爬虫框架——feapder
2021/04/27 Python