国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

bootstrap實現動態進度條效果

2019-11-19 17:14:51
字體:
來源:轉載
供稿:網友

Bootstrap的動態進度條:

html: 創建一個modal   這里使用fade先將modal隱藏起來,然后modal里面嵌入progress 代碼很簡單

<div class="modal fade" data-backdrop="static" tabindex="-1" id="progressbar">                       <!--窗口聲明:-->                       <div class="modal-dialog modal-lg">                         <!-- 內容聲明 -->                         <div class="modal-content">                           <!-- 主體 -->                           <div class="modal-body">                             <div class="progress progress-striped active">                               <div id="test" class="progress-bar progress-bar-success" role="progressbar" style="width: 10%;">                                 保存中:{{length}}%                               </div>                             </div>                           </div>                         </div>                       </div>                     </div> 

PS:關于模態框:如果你想實現點擊空白處不關閉模態框,可以在<div class="modal fade" data-backdrop="static">這里初始化modal的參數,或者在js里面通過

$('.modal').modal({backdrop: 'static', keyboard: false});設置并打開,當然,哪種方便就用哪種

js:

//進度條的控制 function startProgerss(){   var trytmp=0;   var wait=false;   run();   function run(){     if(!wait){       vue.length+=(Math.random()*10).ceil();     }     if(vue.length<=98){       if(vue.length>80 && textupover && imgupover){         vue.length=100;          $("div[role='progressbar']").css("width","100%");         //短暫延遲后刷新頁面,貌似""作用是刷新本頁面         refreshtohome(1000, "");       }else{         $("div[role='progressbar']").css("width",vue.length+"%");         var timer=setTimeout(run,100);       }     }else{//等待時間過長,可能出現了其他錯誤       wait=true;//進入等待狀態       vue.length=99;       $("div[role='progressbar']").css("width","99%");       //查看服務器的響應       if(textupover && imgupover){         vue.length=100;          $("div[role='progressbar']").css("width","100%");         //短暫延遲后刷新頁面,貌似""作用是刷新本頁面         refreshtohome(1000, "");       }       if(++trytmp<10){//超時等待(大約10s)         var timer=setTimeout(run,1000);       }else{         alert("服務器響應失敗!");         //隱藏進度條提示框         $('#progressbar').modal('hide');         //重置進度條的長度         vue.length=10;       }     }   } } 

解釋:重點是要明白進度條的意義:給用戶一個讀條,讓用戶看到程序是在進行而不是死機了,這可以加強應用的用戶體驗效果。

我上面代碼是這樣設計的:當提交表單,調用js顯示模態框(相當于顯示進度條),然后js動態改變進度條的樣式(長度),自己控制一個可取的范圍

當前臺接收到后臺的響應的時候,讓進度條加載到100%,關閉模態框(隱藏進度條),刷新數據。。

關于百分比的顯示,我這里使用了Vue.js來代理,js改變vue.length的值,間接改變前臺百分比的顯示。當然,條條大路通羅馬,沒有最好的設計,只有更好的思想。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 井冈山市| 荥经县| 抚顺市| 邢台市| 淮阳县| 乌兰浩特市| 绥阳县| 九台市| 金溪县| 鹤庆县| 衡阳市| 大渡口区| 罗江县| 宿松县| 定襄县| 怀柔区| 宜宾市| 阿拉善右旗| 会昌县| 高尔夫| 汶上县| 汽车| 云安县| 定西市| 景洪市| 金昌市| 乌拉特后旗| 化州市| 阳春市| 自治县| 沙湾县| 石阡县| 西林县| 准格尔旗| 彰武县| 宜宾市| 临潭县| 化隆| 三江| 石河子市| 武川县|