近期在做一個(gè)網(wǎng)站的查詢功能,但是由于數(shù)據(jù)量確實(shí)太大,分頁查詢后也是很慢,同時(shí)查詢出的數(shù)據(jù)部分還要進(jìn)行一些處理,導(dǎo)致用戶說要我們給他們加一個(gè)查詢進(jìn)度,要百分比顯示。加上加載動(dòng)畫很簡(jiǎn)單,layui有現(xiàn)成的。但是還要?jiǎng)赢嫛?。我tm(手動(dòng)微笑),原諒我水平比較低。然后就瞎搞,終于搞出了一個(gè)加載的進(jìn)度,雖然還是假的。。。
成都創(chuàng)新互聯(lián)主營鎮(zhèn)寧網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都APP應(yīng)用開發(fā),鎮(zhèn)寧h5成都微信小程序搭建,鎮(zhèn)寧網(wǎng)站營銷推廣歡迎鎮(zhèn)寧等地區(qū)企業(yè)咨詢
上面廢話有點(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í)長(zhǎng)的,可以給一個(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); } }); }
OK,就是這么多,主要是利用預(yù)估的時(shí)間與現(xiàn)在已進(jìn)行時(shí)間進(jìn)行預(yù)估做比較,所以實(shí)際使用的時(shí)候還要進(jìn)行一定程度的調(diào)整,但是,最起碼也是個(gè)思路是不是233333,參考一下吧
超過時(shí)間時(shí)進(jìn)度會(huì)定格在99%,所以,emmmm....注意預(yù)留一些時(shí)間
以上這篇layui 實(shí)現(xiàn)加載動(dòng)畫以及非真實(shí)加載進(jìn)度的方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持創(chuàng)新互聯(lián)。
網(wǎng)頁名稱:layui實(shí)現(xiàn)加載動(dòng)畫以及非真實(shí)加載進(jìn)度的方法
當(dāng)前路徑:http://aaarwkj.com/article38/pegpsp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、定制開發(fā)、全網(wǎng)營銷推廣、做網(wǎng)站、搜索引擎優(yōu)化、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)