layui實(shí)現(xiàn)加載動畫以及非真實(shí)加載進(jìn)度的方法-創(chuàng)新互聯(lián)

近期在做一個(gè)網(wǎng)站的查詢功能,但是由于數(shù)據(jù)量確實(shí)太大,分頁查詢后也是很慢,同時(shí)查詢出的數(shù)據(jù)部分還要進(jìn)行一些處理,導(dǎo)致用戶說要我們給他們加一個(gè)查詢進(jìn)度,要百分比顯示。加上加載動畫很簡單,layui有現(xiàn)成的。但是還要動畫。。我tm(手動微笑),原諒我水平比較低。然后就瞎搞,終于搞出了一個(gè)加載的進(jìn)度,雖然還是假的。。。

創(chuàng)新互聯(lián)長期為上千多家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為正陽企業(yè)提供專業(yè)的成都網(wǎng)站制作、網(wǎng)站建設(shè),正陽網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

上面廢話有點(diǎn)多,直接切入正題。

首先是html代碼。。。。。(不存在的2333333........)

然后是js代碼:

 //這里是必須要有的,_index的作用是用來關(guān)閉遮罩,詳細(xì)看layui的文檔
 var _index;
 var _lp_baseTime = 0;
 var _lp_startTime = 0;
 function updateLoadProgress() {
  if (_lp_baseTime < 0) {
   layer.close(_index);
   return;
  }
  var dval = parseInt(new Date().valueOf())- parseInt(_lp_startTime);
  var timeDifference = (dval / _lp_baseTime).toFixed(2);
  var lp = timeDifference < 1 ? timeDifference * 100 : 99;
  $("#loadProgress").html(parseInt(lp));
  setTimeout(function () { updateLoadProgress(); return; }, 650);
 }
 
 
 function 你的函數(shù)(){
 
 $.ajax({
  url:url,
  async:true,
  data:{},
  beforeSend:function(){
   //敲黑板
   _index = layer.load(1, {
     content: "<div style='margin-left:-23px;padding-top:44px;width:120px;color:#FFF;'>正在查詢(<span id='loadProgress' >0</span>%)</div>",
     shade: [0.5, '#000']
    });
   //這里是預(yù)估的時(shí)間,因?yàn)檎麄€(gè)進(jìn)度都是根據(jù)消耗時(shí)間計(jì)算的 = =
   //這里的start,end,stns都是原始項(xiàng)目里帶的。這個(gè)的作用是計(jì)算要等待的時(shí)長的,可以給一個(gè)固定值或者其他的東西公式,保證結(jié)果是正整數(shù),單位是毫秒即可。
   _lp_baseTime = Math.abs(new Date(end).valueOf() - new Date(start).valueOf()) / 3600000 * stns.split(',').length * 150;
   _lp_startTime = new Date().valueOf();
 
   setTimeout(function () { updateLoadProgress(); return; }, 60);
  },
  success:function(){ _lp_baseTime = -1; $("#loadProgress").html("100");layer.close(_index); },
  error:function(){
    _lp_baseTime = -1;
    layer.close(_index);
   }
 });
 
 }

分享標(biāo)題:layui實(shí)現(xiàn)加載動畫以及非真實(shí)加載進(jìn)度的方法-創(chuàng)新互聯(lián)
轉(zhuǎn)載來于:http://www.bm7419.com/article10/dcddgo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)定制開發(fā)、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)網(wǎng)站設(shè)計(jì)公司、面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作