加载动画js方法
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
* {
margin: 0;
padding: 0;
}
#wrapper {
background: #fff;
opacity: 1;
position: fixed;
z-index: 10;
top: 0px;
width: 100%;
height: 1600px;
}
#loader {
background: url('http://img.zcool.cn/community/01909155a905dc32f875495ea197c9.gif') 50% 50% no-repeat #fff;
width: 200px;
height: 200px;
margin: 300px auto;
}
</style>
<script>
window.addEventListener("load", function() {
var wrapper = document.getElementById("wrapper");
document.body.removeChild(wrapper);
});
</script>
</head>
<body>
<div id="wrapper">
<div id="loader"></div>
</div>
<span>动画加载完毕</span>
</body>
</html>
原生js的load方法,没有依赖。
加载动画jq方法
1.使用setTimeout方法
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.wrapper {
position: relative;
height: 100%;
width: 100%;
}
#loader-wrapper {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1000;
background: #fff;
}
#loader {
background: url('http://img.zcool.cn/community/01909155a905dc32f875495ea197c9.gif') 50% 50% no-repeat #fff;
display: block;
position: relative;
left: 50%;
top: 50%;
width: 200px;
height: 200px;
margin: -100px 0 0 -100px;
z-index: 1001;
}
.loaded #loader {
opacity: 0;
}
.loaded #loader-wrapper {
visibility: hidden;
}
</style>
</head>
<body>
<div class="wrapper">
<div id="loader-wrapper">
<div id="loader"></div>
</div>
<span>动画加载完毕</span>
</div>
<script src="//cdn.bootcss.com/jquery/2.2.4/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
setTimeout(function() {
$('.wrapper').addClass('loaded');
}, 3000);
});
</script>
</body>
</html>
模拟动画效果(没什么卵用)
2.使用load方法
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
.loader {
position: fixed;
left: 0px;
top: 0px;
width: 100%;
height: 100%;
z-index: 9999;
background: url('http://img.zcool.cn/community/01909155a905dc32f875495ea197c9.gif') 50% 50% no-repeat rgb(249, 249, 249);
}
</style>
</head>
<body>
<div class="loader"></div>
<span>动画加载完毕</span>
<script src="//cdn.bootcss.com/jquery/2.2.4/jquery.min.js"></script>
<script type="text/javascript">
$(window).load(function() {
$(".loader").fadeOut("slow");
})
</script>
</body>
</html>
监听网页加载效果(不精准)
tip:动画效果实现方法
1.gif图片
2.svg图片(推荐)
3.css3动画(推荐)
以上方法并不能真正的获取页面加载进度信息。
接近真正的获取页面加载进度的方法
使用pace.js插件,监听元素加载,监听ajax请求。此插件原理是搜索页面的元素、请求,利用(ajax)document.readyState来获取进度信息。(推荐)
PS:如果网页使用了预加载或者懒加载技术的话,进度条的信息也是不真实的。
来源:https://www.cnblogs.com/Sroot/p/5772398.html