JQuery实现页面Loading效果

时间:2021-10-18 15:59:59

第一步:添加遮罩层和LOADING层

<div class="overlay"></div>
<div id="AjaxLoading" class="showbox">
 <div class="loadingWord"><img src="../JS/waiting.gif">加载中,请稍候...</div>
</div>

第二步:添加CSS样式

<style type="text/css">
    *{margin:0;padding:0;list-style-type:none;}
    a,img{border:0;}
    .demo{margin:100px auto 0 auto;width:400px;text-align:center;font-size:18px;}
    .demo .action{color:#3366cc;text-decoration:none;font-family:"微软雅黑","宋体";}
    .overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:998;width:100%;height:100%;_padding:0 20px 0 0;background:#f6f4f5;display:none;}
    .showbox{position:fixed;top:0;left:50%;z-index:9999;opacity:0;filter:alpha(opacity=0);margin-left:-80px;}
    *html,*html body{background-image:url(about:blank);background-attachment:fixed;}
    *html .showbox,*html .overlay{position:absolute;top:expression(eval(document.documentElement.scrollTop));}
    #AjaxLoading{border:1px solid #8CBEDA;color:#37a;font-size:12px;font-weight:bold;}
    #AjaxLoading div.loadingWord{width:180px;height:50px;line-height:50px;border:2px solid #D6E7F2;background:#fff;}
    #AjaxLoading img{margin:10px 15px;float:left;display:inline;}
    </style>

第三步:添加JS控制代码

<script>

$(document).ready(function () {

var h = $(document).height();

$(".overlay").css({ "height": h });

$("#btn3").click(function () {

ShowLoading();

$.post("../ASHX/Course.ashx", { json: s, cid: "1234567" }, function (data, textStatus) {

alert(data + " status:" + textStatus);

HiddenLoading();

})

})

function ShowLoading() {

$(".overlay").css({ 'display': 'block', 'opacity': '0.8' });

$(".showbox").stop(true).animate({ 'margin-top': '300px', 'opacity': '1' }, 200);

}

function HiddenLoading() {

$(".showbox").stop(true).animate({ 'margin-top': '250px', 'opacity': '0' }, 400);

$(".overlay").css({ 'display': 'none', 'opacity': '0' });

}

});

</script>