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 相关文章推荐
提交表单时执行func方法实现代码
Mar 17 Javascript
javascript重写alert方法的实例代码
Mar 29 Javascript
jquery和js实现对div的隐藏和显示方法
Sep 26 Javascript
jQuery焦点控制图层展示延迟隐藏的方法
Mar 09 Javascript
举例说明如何为JavaScript的方法参数设置默认值
Nov 17 Javascript
angularjs在ng-repeat中使用ng-model遇到的问题
Jan 21 Javascript
js实现简单排列组合的方法
Jan 27 Javascript
如何利用JQuery实现从底部回到顶部的功能
Dec 27 Javascript
@ResponseBody 和 @RequestBody 注解的区别
Mar 08 Javascript
使用mpvue搭建一个初始小程序及项目配置方法
Dec 03 Javascript
js最实用string(字符串)类型的使用及截取与拼接详解
Apr 26 Javascript
jQuery是用来干什么的 jquery其实就是一个js框架
Feb 04 jQuery
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微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
2015/12/21 PHP
Zend Framework基于Command命令行建立ZF项目的方法
2017/02/18 PHP
详解PHP处理字符串类似indexof的方法函数
2017/06/11 PHP
PHP空值检测函数与方法汇总
2017/11/19 PHP
Smarty模板语法详解
2019/07/20 PHP
PHP获取真实IP及IP模拟方法解析
2020/11/24 PHP
ASP.NET jQuery 实例17 通过使用jQuery validation插件校验ListBox
2012/02/03 Javascript
JS实现QQ图片一闪一闪的效果小例子
2013/07/31 Javascript
Enter转换为Tab的小例子(兼容IE,Firefox)
2013/11/14 Javascript
写出高效jquery代码的19条指南
2014/03/19 Javascript
JavaScript实现判断图片是否加载完成的3种方法整理
2015/03/13 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
2015/03/13 Javascript
jQuery实现带有上下控制按钮的简单多行滚屏效果代码
2015/09/04 Javascript
jquery实现标题字体变换的滑动门菜单效果
2015/09/07 Javascript
jQuery Ztree行政地区树状展示(点击加载)
2016/11/09 Javascript
jquery 追加元素append、prepend、before、after用法与区别分析
2016/12/02 Javascript
JavaScript中利用for循环遍历数组
2017/01/15 Javascript
使用Vue如何写一个双向数据绑定(面试常见)
2018/04/20 Javascript
Vue+Element自定义纵向表格表头教程
2020/10/26 Javascript
详解Python中的__new__()方法的使用
2015/04/09 Python
Python学习入门之区块链详解
2017/07/25 Python
用python实现k近邻算法的示例代码
2018/09/06 Python
使用Python计算玩彩票赢钱概率
2019/06/26 Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
2020/07/01 Python
BeautifulSoup获取指定class样式的div的实现
2020/12/07 Python
彪马荷兰官网:PUMA荷兰
2019/05/08 全球购物
上班玩游戏检讨书
2014/02/07 职场文书
装饰公司活动策划方案
2014/08/23 职场文书
搞笑的爱情检讨书
2014/10/01 职场文书
党的群众路线教育实践活动个人对照检查材料(四风)
2014/11/05 职场文书
2015年环境整治工作总结
2015/05/22 职场文书
初中毕业生感言
2015/07/31 职场文书
严以修身专题学习研讨会发言材料
2015/11/09 职场文书
公务员学习中国梦心得体会
2016/01/05 职场文书
vue首次渲染全过程
2021/04/21 Vue.js
tomcat的catalina.out日志按自定义时间格式进行分割的操作方法
2022/04/02 Servers