【原生JS】制作网页头部刷新进度条
2024-10-19 11:14:02
之前的某次番啬看到油管上有这么一个进度条,当时觉得挺好玩,一直想着做一个试试,刚才弄了一下写了一个不算太好看的简陋版本,哈哈。
(本博客刷新会头部会出现,因为并没有真正的参与到浏览器加载是否完整这个渲染过程中来,所以只是一个表象,并不是说这个显示完了就浏览器也加载完了所以资源。)
效果图:
先看下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>
最新文章
- nexus的使用
- SQL Server 中的事务与事务隔离级别以及如何理解脏读, 未提交读,不可重复读和幻读产生的过程和原因
- Android 应用程序集成FaceBook 登录及二次封装
- 对象比较器:Comparable和Comparator
- Fiddler高级技巧 - 映射路径到本地文件夹
- Volley(六 )—— 从源码带看Volley的缓存机制
- JS删除数组条目中重复的条目
- Guava 的学习
- (转载)struts2的驱动模型
- tomcat之JNDI数据源配置
- html笔记 仅适用于个人
- 自定义和扩展 SharePoint 2010 Server 功能区
- Linux内核中链表实现
- sql2008r2,以前好好可以用的,但装了vs2017后,连接不上了,服务也停了,结果手动也 启动不了, 无法加载或初始化请求的服务提供程
- Ionic2开发环境搭建、项目创建调试与Android应用的打包、优化
- Python之路(第三篇):Python基本数据类型字符串(二)
- 关于拼接SQL语句sqlMap的使用方法
- JDK1.8源码分析之HashMap
- BZOJ3616 : War
- ROS知识(15)----Actionlib的使用(一)
热门文章
- 使用mybatis的延迟加载
- Spring_Hibernate
- python第一天 :计算机基础(一)
- at: 安排一个任务在未来执行,需要一个atd的系统后台进程
- 基于spring-boot的测试桩设计--几种常见的controller
- 斯坦福CS课程列表
- mysqldump导出表结构或者表数据
- [Linux]jenkins的安装 标签: linux服务器 2016-08-21 20:47 1060人阅读 评论(23)
- 亚洲唯一,阿里云SLB位列Gartner全球网络负载均衡市场前五
- Gartner:阿里云位列全球云数据库市场份额前三,数据库未来需上云