当前位置:Gxlcms > JavaScript > 简单实现js进度条加载效果

简单实现js进度条加载效果

时间:2021-07-01 10:21:17 帮助过:4人阅读

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

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>下载进度</title>
  6. <style>
  7. /*定义父容器*/
  8. .content{
  9. width: 500px;
  10. height: 200px;
  11. background: pink;
  12. margin:0 auto;
  13. }
  14. /*定义进度条*/
  15. .box{
  16. width: 20px;
  17. height: 30px;
  18. line-height: 30px;
  19. text-align: center;
  20. background: #f00;
  21. color: #fff;
  22. }
  23. /*定义下方显示的下载百分比*/
  24. .percent{
  25. width: 100%;
  26. height: 30px;
  27. line-height: 30px;
  28. color: #00f;
  29. text-align: center;
  30. }
  31. </style>
  32. </head>
  33. <body>
  34. <div class="content" id="content">
  35. <input type="button" id="button" value="暂停/增加" onclick="parse()">
  36. <div class="box" id="box"></div>
  37. <div class="percent" id="percent"></div>
  38. </div>
  39. <script>
  40. // 获取id为box的元素
  41. var box = document.getElementById("box");
  42. //初始化y,此值只可以放在方法外部,若放到方法内部的话,那方法的每一次执行都是从宽度为0开始,从而使得进度条会一直停留在第一次执行方法的位置。
  43. var y = 0;
  44. //定义parse()方法
  45. function parse(){
  46. //获取进度条div的宽度
  47. var x = box.style.width;
  48. x = parseInt(x) + 1;
  49. y = y+1;
  50. //将y值加上百分号赋值给box的宽度。这样每次+1就可以实现进度条占父容器的100%;
  51. box.style.width = y + "%";
  52. //将y值加上百分号并赋值给显示下载百分比的div上
  53. document.getElementById("percent").innerHTML = y + "%";
  54. //判断当y已经100的时候,也就是进度条的宽度和父容器的宽度一致的时候停止。
  55. if (y >= 100) {
  56. clearInterval(id);
  57. document.getElementById("percent").innerHTML = "100%";
  58. document.getElementById("box").innerHTML = "下载完毕!";
  59. }
  60. }
  61. //每10毫秒调用一下parse()方法.
  62. var id = setInterval("parse()",10);
  63. //当单机父容器时,进度条停止
  64. document.getElementById("content").onclick = function(){
  65. clearInterval(id);
  66. }
  67. </script>
  68. </body>
  69. </html>

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

人气教程排行