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转换字符串为dom对象(字符串动态创建dom)
May 10 Javascript
js将控件隐藏的方法及display属性介绍
Jul 04 Javascript
jQuery针对各类元素操作基础教程
Aug 29 Javascript
JavaScript开发人员的10个关键习惯小结
Dec 05 Javascript
JS面向对象(3)之Object类,静态属性,闭包,私有属性, call和apply的使用,继承的三种实现方法
Feb 25 Javascript
关于JS中的方法是否加括号的问题
Jul 27 Javascript
JavaScript中最容易混淆的作用域、提升、闭包知识详解(推荐)
Sep 05 Javascript
json定义及jquery操作json的方法
Oct 03 Javascript
Vue结合原生js实现自定义组件自动生成示例
Jan 21 Javascript
vue监听滚动事件实现滚动监听
Apr 11 Javascript
关于Vue背景图打包之后访问路径错误问题的解决
Nov 03 Javascript
JS实现获取word文档内容并输出显示到html页面示例
Jun 23 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
PHP新手上路(十一)
2006/10/09 PHP
PHP学习笔记 IIS7下安装配置php环境
2012/10/29 PHP
Yii数据库缓存实例分析
2016/03/29 PHP
Zend Framework分发器用法示例
2016/12/11 PHP
PHP中Static(静态)关键字功能与用法实例分析
2019/04/05 PHP
修改Laravel自带的认证系统的User类的命名空间的步骤
2019/10/15 PHP
JavaScript isArray()函数判断对象类型的种种方法
2010/10/11 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
2013/11/20 Javascript
jquery和ajax的关系详细介绍
2013/11/29 Javascript
javascript中mouseover、mouseout使用详解
2015/07/19 Javascript
jquery ztree异步搜索(搜叶子)实践
2016/02/25 Javascript
jquery zTree异步加载简单实例讲解
2016/02/25 Javascript
微信小程序 网络请求(GET请求)详解
2016/11/16 Javascript
Jquery Easyui表单组件Form使用详解(30)
2016/12/19 Javascript
Vue编写多地区选择组件
2017/08/21 Javascript
实现两个文本框同时输入的实例
2017/09/25 Javascript
nodejs使用redis作为缓存介质实现的封装缓存类示例
2018/02/07 NodeJs
JavaScript创建对象方法实例小结
2018/09/03 Javascript
JS 数组基本用法入门示例解析
2020/01/16 Javascript
vue双击事件2.0事件监听(点击-双击-鼠标事件)和事件修饰符操作
2020/07/27 Javascript
为Python程序添加图形化界面的教程
2015/04/29 Python
PyQt5 QSerialPort子线程操作的实现
2018/04/21 Python
jupyter notebook 重装教程
2020/04/16 Python
PyQt5实现简单的计算器
2020/05/30 Python
python接入支付宝的实例操作
2020/07/20 Python
Python pysnmp使用方法及代码实例
2020/08/24 Python
俄罗斯达美乐比萨外送服务:Domino’s Pizza
2020/12/18 全球购物
JAVA代码查错题
2014/10/10 面试题
委托书的格式
2014/08/01 职场文书
我们的节日元宵活动方案
2014/08/23 职场文书
中国梦演讲稿范文
2014/08/28 职场文书
民主评议党员自我评价材料
2014/09/18 职场文书
群众路线教育实践活动学习心得体会
2014/10/30 职场文书
2015年国庆节新闻稿
2015/07/18 职场文书
一文搞懂redux在react中的初步用法
2021/06/09 Javascript
JavaScript文档对象模型DOM
2021/11/20 Javascript