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 相关文章推荐
jquery validate使用攻略 第四步
Jul 01 Javascript
JQuery最佳实践之精妙的自定义事件
Aug 11 Javascript
Event altKey,ctrlKey,shiftKey属性解析
Dec 18 Javascript
深入理解javascript中return的作用
Dec 30 Javascript
JavaScript必知必会(二) null 和undefined
Jun 08 Javascript
微信小程序 progress组件详解及实例代码
Oct 25 Javascript
详解VueJs前后端分离跨域问题
May 24 Javascript
JS 音频可视化插件Wavesurfer.js的使用教程
Oct 31 Javascript
实用Javascript调试技巧分享(小结)
Jun 18 Javascript
Layui 导航默认展开和菜单栏选中高亮设置的方法
Sep 04 Javascript
JavaScript设计模式--简单工厂模式定义与应用案例详解
May 23 Javascript
JavaScript展开运算符和剩余运算符的区别详解
Feb 18 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
虹吸式咖啡壶操作
2021/03/03 冲泡冲煮
php设计模式 Facade(外观模式)
2011/06/26 PHP
PHP连接SQLSERVER 注意事项(附dll文件下载)
2012/06/28 PHP
基于php中使用excel的简单介绍
2013/08/02 PHP
laravel利用中间件做防非法登录和权限控制示例
2019/10/21 PHP
新闻内页-JS分页
2006/06/07 Javascript
javascript中日期转换成时间戳的小例子
2013/03/21 Javascript
JS this作用域以及GET传输值过长的问题解决方法
2013/08/06 Javascript
jQuery中:nth-child选择器用法实例
2014/12/31 Javascript
jQuery插件kinMaxShow扩展效果用法实例
2015/05/04 Javascript
jquery实现红色竖向多级向右展开的导航菜单效果
2015/08/31 Javascript
浏览器环境下JavaScript脚本加载与执行探析之defer与async特性
2016/01/14 Javascript
jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
2017/03/09 Javascript
实例讲解Vue.js中router传参
2018/04/22 Javascript
基于打包工具Webpack进行项目开发实例
2018/05/29 Javascript
vue 利用路由守卫判断是否登录的方法
2018/09/29 Javascript
微信小程序实现手指拖动选项排序
2020/04/22 Javascript
[01:06] DOTA2英雄背景故事第三期之秩序法则光之守卫
2020/07/07 DOTA
在Python中处理日期和时间的基本知识点整理汇总
2015/05/22 Python
Python常见格式化字符串方法小结【百分号与format方法】
2016/09/18 Python
python实现12306火车票查询器
2017/04/20 Python
django开发教程之利用缓存文件进行页面缓存的方法
2017/11/10 Python
python re模块findall()函数实例解析
2018/01/19 Python
Pytorch入门之mnist分类实例
2018/04/14 Python
Pycharm无法显示动态图片的解决方法
2018/10/28 Python
浅谈python下tiff图像的读取和保存方法
2018/12/04 Python
python爬虫中多线程的使用详解
2019/09/23 Python
pycharm 中mark directory as exclude的用法详解
2020/02/14 Python
python 画图 图例自由定义方式
2020/04/17 Python
python+requests接口压力测试500次,查看响应时间的实例
2020/04/30 Python
有针对性的求职自荐信
2013/11/14 职场文书
护士节策划方案
2014/05/19 职场文书
群众路线问题查摆对照检查材料
2014/10/04 职场文书
实习推荐信格式模板
2015/03/27 职场文书
年会主持人开场白台词
2015/05/29 职场文书
员工规章制度范本
2015/08/07 职场文书