【原生JS】制作网页头部刷新进度条
之前的某次番啬看到油管上有这么一个进度条,当时觉得挺好玩,一直想着做一个试试,刚才弄了一下写了一个不算太好看的简陋版本,哈哈。
(本博客刷新会头部会出现,因为并没有真正的参与到浏览器加载是否完整这个渲染过程中来,所以只是一个表象,并不是说这个显示完了就浏览器也加载完了所以资源。)
效果图:
先看下html:
就两个标签
- <div id="barbg">
- <div id="bar">
- </div>
- </div>
CSS:
布局也很简单 < overflow-x > 禁止横向滚动条出现,在JS中添加个窗口事件再启用
- <style>
- *{margin:;padding:;}
- body{overflow-x:hidden;}
- #barbg{height:5px; background:rgb(149,143,143)}
- #barbg div{width:; height:5px;
- background:rgb(230,10,10);}
- </style>
JS
然后原生JS的话就是这样了
- <script>
- document.onreadystatechange = function(){
- var bar = document.getElementById('bar');
- var barbg = bar.parentNode;
- var wd = document.body.scrollWidth || document.documentElement.scrollWidth;
- var t = 10;
- var d = 0;
- var i = 0;
- var timer = setInterval(goto,10);
- function goto(){
- d = d + t ;
- bar.style.width = d + 'px';
- if(d >= wd){
- clearInterval(timer);
- bar.style.background = 'rgba(230,10,10,0)';
- none();
- }
- }
- function none(){
- var a = 10 - i;
- i++;
- if(a != 0 && a != 10){a = a * 0.1}
- if(a === 10){a = 1}
- if(a === 0){a = 0}
- barbg.style.background = 'rgba(230,10,10,' + a.toFixed(1) + ')';
- if(a === 0){barbg.style.display = 'none'}
- if(a != 0){setTimeout(none,50);}
- }
- }
- window.onresize = function(){
- document.body.setAttribute('style','overflow-x: auto');
- });
- </script>
【原生JS】制作网页头部刷新进度条的更多相关文章
- 原生js移动端可拖动进度条插件
该插件最初的想法来自网上的一篇文章,直达链接:https://www.cnblogs.com/libin-1/p/6220056.html 笔者因为业务需要寻找到这个插件,然后拿来用之,发现各种不方便 ...
- JS原生上传大文件显示进度条-php上传文件
JS原生上传大文件显示进度条-php上传文件 在php.ini修改需要的大小: upload_max_filesize = 8M post_max_size = 10M memory_li ...
- 利用css+原生js制作简易钟表
利用css+原生js制作简单的钟表.效果如下所示 实现该效果,分三大块:html.javascript.css html部分html部分比较简单,定义一个clock的div,内部有原点.时分秒针.日期 ...
- 使用 原生js 制作插件 (javaScript音乐播放器)
1.引用页面 index.html <!DOCTYPE html> <html lang="en"> <head> <meta chars ...
- [Swift通天遁地]一、超级工具-(2)制作美观大方的环形进度条
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- #3使用html+css+js制作网页 番外篇 使用python flask 框架 (II)
#3使用html+css+js制作网页 番外篇 使用python flask 框架 II第二部 0. 本系列教程 1. 登录功能准备 a.python中操控mysql b. 安装数据库 c.安装mys ...
- #3使用html+css+js制作网页 番外篇 使用python flask 框架 (I)
#3使用html+css+js制作网页 番外篇 使用python flask 框架(I 第一部) 0. 本系列教程 1. 准备 a.python b. flask c. flask 环境安装 d. f ...
- #3使用html+css+js制作网页 番外篇 制作接收php
使用html+css+js制作网页 番外篇 制作接收php 本系列链接 基础 php语法 例子 本系列链接 #1使用html+css+js制作网站教程 准备 #2使用html+css+js制作网站教程 ...
- #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 ...
随机推荐
- 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 ...
- python ndarray相关操作:重构
- 【花般绽放】balibali
先放项目地址:https://github.com/1067011734/balibali 感谢无私的程序员们分享 我们边看效果边看代码 项目运行出来的效果 先看Home页面 轮播 //src\pag ...
- 如何在Data Lake Analytics中使用临时表
前言 Data Lake Analytics (后文简称DLA)是阿里云重磅推出的一款用于大数据分析的产品,可以对存储在OSS,OTS上的数据进行查询分析.相较于传统的数据分析产品,用户无需将数据重新 ...
- Codeforces 404B
毫无疑问这题不是难题,但是这种题目最让人纠结 打心里对这种题目就比较害怕,果然,各种WE 这里贴上代码,用Python写的,比较偷懒: def cur_pos(a, d): if 0 <= d ...
- vue中element-ui添加按钮
<div v-for="(v,i) in list"> <el-form label-width="120px" size="sma ...
- 带三角形下标的提示框(按钮button)
HTML:<div class="leaflet-popup-content-wrapper"> <div class="leaflet-popup-c ...
- 洛谷 P1505 [国家集训队]旅游 树链剖分
目录 题面 题目链接 题目描述 输入输出格式 输入格式 输出格式 输入输出样例 输入样例: 输出样例: 说明 思路 AC代码 总结 题面 题目链接 P1505 [国家集训队]旅游 题目描述 Ray 乐 ...
- vagrant up提示"Couldn't open file /path/to/base"的错误解决方法
在vagrant使用命令vagrant up启动虚拟机时 出错: C:\Vagrant>vagrant up Bringing machine 'default' up with 'virtua ...
- shell学习(23)- diff和patch
diff命令可以生成两个文件之间的差异对比. (1) 先创建下列用于演示的文件.文件 1:version1.txt this is the original text line2 line3 line ...