簡述: javascript
如今須要實現當前端向後臺請求數據時,出現滾動條,當請求結束後滾動條消失 css
滾動圖片和css文件來自網上 html
知識點: 前端
1. css配置 java
2. 試用div遮蓋block住全頁面,防止表單屢次提交 ajax
3. 異步回調消失滾動條 json
代碼: 緩存
1. 首先在Html文件中添加以下div, 其中overlay是起到遮蓋block頁面用的 app
- <!-- 加載條 -->
- <div id="AjaxLoading" class="showbox">
- <div class="loadingWord"></div>
- </div>
-
- <div class="overlay"></div>
2. css文件中定義showbox和loadingWord類 dom
loading.css
- @charset "utf-8";
- .overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:998;width:100%;height:100%;_padding:0 20px 0 0;background:#FFF;display:none;}
- .showbox{position:fixed;top:0;left:50%;z-index:9999;opacity:0;filter:alpha(opacity=0);margin-left:-80px;}
- #AjaxLoading{border:1px solid #8CBEDA;color:#37a;font-size:12px;font-weight:bold;}
- #AjaxLoading div.loadingWord{width:200px;height:50px;line-height:50px;border:2px solid #D6E7F2;background:#fff;}
- #AjaxLoading img{margin:10px 15px;float:left;display:inline;}
3. JS實現
- /**
- * 顯示loading條
- * words 顯示的信息
- */
- function showLoading(words){
- var h = $(document).height();
- $(".overlay").css({"height": h });
- $(".overlay").css({'display':'block','opacity':'0.4'});
- $(".showbox").stop(true).animate({'margin-top':'300px','opacity':'1'},0);
- $(".loadingWord ").empty();
- $(".loadingWord ").append("<img src=\"../images/loading.gif\">" + words);
- }
-
-
- /**
- * 消除loading條
- */
- function dismissLoading(){
- $(".overlay").css({'display':'none','opacity':'0'});
- $(".showbox").stop(true).animate({'margin-top':'250px','opacity':'0'},400);
- }
數據請求部分處理:
- function ajaxCallData(searchKeywords, pageNo){
- //當頁面出現html填充結束後,向後臺請求數據,不帶查詢參數
- $.ajax({
- type:"POST",
- url: "${ctx}/business/voucher",
- data: {
- 'searchKeywords' : searchKeywords,
- 'action' : 'searchVoucher',
- 'random' : Math.random(), //加時間戳,防止IE緩存
- 'pageNo' : pageNo
- },
- dataType:"json",
- global:false,
- beforeSend: function(XHR){
- showLoading("數據加載中,請稍候...");
- },
- success: function(data){
- RenderPage(data);
- },
- error:function(){
- alert("加載失敗");
- dismissLoading();
- }
- });
- }
效果是當點擊的時候出現滾動條,數據拿到後消失