为了获得更好的用户体验,现在大多数网页都会在页面中加一个加载中效果,这里实现一个加载中逐渐消失的效果,以至于看上去不那么生硬。
html:
<div id="loading"><img class="lazyload" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAANSURBVBhXYzh8+PB/AAffA0nNPuCLAAAAAElFTkSuQmCC" data-original="images/common/loading.gif" alt=""></div>
css:
/*加载中*/#loading{ position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color:#333; z-index: 2000; opacity: 1;}#loading img{ width:400px; height:300px; position:absolute; top:50%; left:50%; margin-top:-150px; margin-left:-200px; z-index: 2001;}
这里的加载中为一个gif的动态图,相对css,要更简单好用,多样化,但是gif图片容易太大,导致图片加载过慢,所以要到网上找一些在线压缩图片的地方压缩一下,尽可能不失真的情况下减小体积。
js:
<script> //loading加载中//监听加载状态改变document.onreadystatechange = completeLoading; //加载状态为complete时移除loading效果 function completeLoading() { if (document.readyState == "complete") { $("#loading").animate({ "opacity":"0" },500).hide(1000); } }</script>
给加载中效果默认opacity设为1,逐渐消失的效果则把opacity变为0,但是元素在页面中不消失,这样会影响页面其他元素的点击使用,所以要把元素隐藏掉。
点击查看更多内容
为 TA 点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦