静态效果的实现
网页顶部加载进度条,近年来很流行,很多网站都采用了这种加载方式。网上也有这样类似的插件,今天我们总结一下网页顶部线性页面加载进度条。
大体的写法如下:
body{
margin:0;
}
#progress {
position:fixed;
height: 2px;
background:#2085c5;
transition:opacity 500ms linear
}
#progress.done {
opacity:0
}
#progress span {
position:absolute;
height:2px;
-webkit-box-shadow:#2085c5 1px 0 6px 1px;
-webkit-border-radius:100%;
opacity:1;
width:150px;
right:-10px;
-webkit-animation:pulse 2s ease-out 0s infinite;
}
@-webkit-keyframes pulse {
30% {
opacity:.6
}
60% {
opacity:0;
}
100% {
opacity:.6
}
}
html代码:
<div id=\"progress\">
<span></span>
</div>
jquery代码:
$({property: 0}).animate({property: 100}, {
duration: 3000,
step: function() {
var percentage = Math.round(this.property);
$(\'#progress\').css(\'width\', percentage+\"%\");
if(percentage == 100) {
$(\"#progress\").addClass(\"done\");//完成,隐藏进度条
}
}
});
设定其持续时间是3秒钟!你可以改动一下,把3秒钟的时间改成你网页的加载时间,就可以做出网页动态加载进度条了。。
页面加载插件的实际应用及load函数的运用
关于页面的加载,很难找到一个很好的方法来获取页面的实际下载进度。下面介绍的方法是运用 $(window).load(function() {})和$(document).ready(function(){})来进行的,虽然这种方法不是很准确,但是也可以模拟网页的下载。
$(function(){
NProgress.start();
})
$(window).load(function() {
NProgress.done();
})
有很多朋友可能对 $(window).load(function() {})和$(document).ready(function(){})的区别不是很了解。大家可以写一个小案例来测试一下!
例如:
$(window).load(function() {
alert(\"我是load\")
})
$(function(){
alert(\"我是document.ready\")
})
很明显,肯定是document.ready先执行,因为document.ready是在DOM结构载入完后执行的,不需要载入得这么“完全”,而$(window).load则是页面全部内容加载完成后执行的。
有时候,
$(window).load(function() {
alert(\"我是load\")
})
也可以用js的写法:
window.onload = function(){ ... }
都是在页面全部下载完成之后来执行的。两种写法是等价的!
本文地址:https://www.stayed.cn/item/1743
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我