之前的某次番啬看到油管上有这么一个进度条,当时觉得挺好玩,一直想着做一个试试,刚才弄了一下写了一个不算太好看的简陋版本,哈哈。

(本博客刷新会头部会出现,因为并没有真正的参与到浏览器加载是否完整这个渲染过程中来,所以只是一个表象,并不是说这个显示完了就浏览器也加载完了所以资源。)

效果图:

先看下html:

就两个标签

  1. <div id="barbg">
  2. <div id="bar">
  3. </div>
  4. </div>

CSS:

布局也很简单  < overflow-x > 禁止横向滚动条出现,在JS中添加个窗口事件再启用

  1. <style>
  2. *{margin:;padding:;}
  3.      body{overflow-x:hidden;}
  4. #barbg{height:5px; background:rgb(149,143,143)}
  5. #barbg div{width:; height:5px;
  6. background:rgb(230,10,10);}
  7. </style>

JS

然后原生JS的话就是这样了

  1. <script>
  2. document.onreadystatechange = function(){
  3. var bar = document.getElementById('bar');
  4. var barbg = bar.parentNode;
  5. var wd = document.body.scrollWidth || document.documentElement.scrollWidth;
  6. var t = 10;
  7. var d = 0;
  8. var i = 0;
  9. var timer = setInterval(goto,10);
  10. function goto(){
  11. d = d + t ;
  12. bar.style.width = d + 'px';
  13. if(d >= wd){
  14. clearInterval(timer);
  15. bar.style.background = 'rgba(230,10,10,0)';
  16. none();
  17. }
  18. }
  19. function none(){
  20. var a = 10 - i;
  21. i++;
  22. if(a != 0 && a != 10){a = a * 0.1}
  23. if(a === 10){a = 1}
  24. if(a === 0){a = 0}
  25. barbg.style.background = 'rgba(230,10,10,' + a.toFixed(1) + ')';
  26. if(a === 0){barbg.style.display = 'none'}
  27. if(a != 0){setTimeout(none,50);}
  28. }
  29.  
  30. }
  31.  
  32. window.onresize = function(){
  33. document.body.setAttribute('style','overflow-x: auto');
  34. });
  35.  
  36. </script>

【原生JS】制作网页头部刷新进度条的更多相关文章

  1. 原生js移动端可拖动进度条插件

    该插件最初的想法来自网上的一篇文章,直达链接:https://www.cnblogs.com/libin-1/p/6220056.html 笔者因为业务需要寻找到这个插件,然后拿来用之,发现各种不方便 ...

  2. JS原生上传大文件显示进度条-php上传文件

    JS原生上传大文件显示进度条-php上传文件 在php.ini修改需要的大小: upload_max_filesize = 8M    post_max_size = 10M    memory_li ...

  3. 利用css+原生js制作简易钟表

    利用css+原生js制作简单的钟表.效果如下所示 实现该效果,分三大块:html.javascript.css html部分html部分比较简单,定义一个clock的div,内部有原点.时分秒针.日期 ...

  4. 使用 原生js 制作插件 (javaScript音乐播放器)

    1.引用页面 index.html <!DOCTYPE html> <html lang="en"> <head> <meta chars ...

  5. [Swift通天遁地]一、超级工具-(2)制作美观大方的环形进度条

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  6. #3使用html+css+js制作网页 番外篇 使用python flask 框架 (II)

    #3使用html+css+js制作网页 番外篇 使用python flask 框架 II第二部 0. 本系列教程 1. 登录功能准备 a.python中操控mysql b. 安装数据库 c.安装mys ...

  7. #3使用html+css+js制作网页 番外篇 使用python flask 框架 (I)

    #3使用html+css+js制作网页 番外篇 使用python flask 框架(I 第一部) 0. 本系列教程 1. 准备 a.python b. flask c. flask 环境安装 d. f ...

  8. #3使用html+css+js制作网页 番外篇 制作接收php

    使用html+css+js制作网页 番外篇 制作接收php 本系列链接 基础 php语法 例子 本系列链接 #1使用html+css+js制作网站教程 准备 #2使用html+css+js制作网站教程 ...

  9. #3使用html+css+js制作网页 制作登录网页

    #3使用html+css+js制作网页 制作登录网页 本系列链接 2制作登录网页 2.1 准备 2.1.1 创建文件夹 2.1.2 创建主文件 2.2 html部分 2.2.1 网站信息 2.2.2 ...

随机推荐

  1. Latex 出现编辑公式,出现错误 !pdfTex error: Font rntxmi7 at 438 not found

    http://docs.miktex.org/manual/advanced.html http://www.cl-projects.de/projects/misc/miktex-fonts.pht ...

  2. python ndarray相关操作:重构

  3. 【花般绽放】balibali

    先放项目地址:https://github.com/1067011734/balibali 感谢无私的程序员们分享 我们边看效果边看代码 项目运行出来的效果 先看Home页面 轮播 //src\pag ...

  4. 如何在Data Lake Analytics中使用临时表

    前言 Data Lake Analytics (后文简称DLA)是阿里云重磅推出的一款用于大数据分析的产品,可以对存储在OSS,OTS上的数据进行查询分析.相较于传统的数据分析产品,用户无需将数据重新 ...

  5. Codeforces 404B

    毫无疑问这题不是难题,但是这种题目最让人纠结 打心里对这种题目就比较害怕,果然,各种WE 这里贴上代码,用Python写的,比较偷懒: def cur_pos(a, d): if 0 <= d ...

  6. vue中element-ui添加按钮

    <div v-for="(v,i) in list"> <el-form label-width="120px" size="sma ...

  7. 带三角形下标的提示框(按钮button)

    HTML:<div class="leaflet-popup-content-wrapper"> <div class="leaflet-popup-c ...

  8. 洛谷 P1505 [国家集训队]旅游 树链剖分

    目录 题面 题目链接 题目描述 输入输出格式 输入格式 输出格式 输入输出样例 输入样例: 输出样例: 说明 思路 AC代码 总结 题面 题目链接 P1505 [国家集训队]旅游 题目描述 Ray 乐 ...

  9. vagrant up提示"Couldn't open file /path/to/base"的错误解决方法

    在vagrant使用命令vagrant up启动虚拟机时 出错: C:\Vagrant>vagrant up Bringing machine 'default' up with 'virtua ...

  10. shell学习(23)- diff和patch

    diff命令可以生成两个文件之间的差异对比. (1) 先创建下列用于演示的文件.文件 1:version1.txt this is the original text line2 line3 line ...