欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

bootstrap實(shí)現(xiàn)動(dòng)態(tài)進(jìn)度條效果

 更新時(shí)間:2017年03月08日 14:42:18   作者:紅塵客棧_繁華  
本篇文章主要介紹了bootstrap實(shí)現(xiàn)動(dòng)態(tài)進(jìn)度條效果,進(jìn)度條可以加強(qiáng)應(yīng)用的用戶體驗(yàn)效果,看到數(shù)字,具有一定的參考價(jià)值,有興趣的可以了解一下。

Bootstrap的動(dòng)態(tài)進(jìn)度條:

html: 創(chuàng)建一個(gè)modal   這里使用fade先將modal隱藏起來,然后modal里面嵌入progress 代碼很簡(jiǎn)單

<div class="modal fade" data-backdrop="static" tabindex="-1" id="progressbar"> 
                      <!--窗口聲明:--> 
                      <div class="modal-dialog modal-lg"> 
                        <!-- 內(nèi)容聲明 --> 
                        <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:關(guān)于模態(tài)框:如果你想實(shí)現(xiàn)點(diǎn)擊空白處不關(guān)閉模態(tài)框,可以在<div class="modal fade" data-backdrop="static">這里初始化modal的參數(shù),或者在js里面通過

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

js:

//進(jìn)度條的控制 
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{//等待時(shí)間過長(zhǎng),可能出現(xiàn)了其他錯(cuò)誤 
      wait=true;//進(jìn)入等待狀態(tài) 
      vue.length=99; 
      $("div[role='progressbar']").css("width","99%"); 
      //查看服務(wù)器的響應(yīng) 
      if(textupover && imgupover){ 
        vue.length=100; 
         $("div[role='progressbar']").css("width","100%"); 
        //短暫延遲后刷新頁面,貌似""作用是刷新本頁面 
        refreshtohome(1000, ""); 
      } 
      if(++trytmp<10){//超時(shí)等待(大約10s) 
        var timer=setTimeout(run,1000); 
      }else{ 
        alert("服務(wù)器響應(yīng)失??!"); 
        //隱藏進(jìn)度條提示框 
        $('#progressbar').modal('hide'); 
        //重置進(jìn)度條的長(zhǎng)度 
        vue.length=10; 
      } 
    } 
  } 
} 

解釋:重點(diǎn)是要明白進(jìn)度條的意義:給用戶一個(gè)讀條,讓用戶看到程序是在進(jìn)行而不是死機(jī)了,這可以加強(qiáng)應(yīng)用的用戶體驗(yàn)效果。

我上面代碼是這樣設(shè)計(jì)的:當(dāng)提交表單,調(diào)用js顯示模態(tài)框(相當(dāng)于顯示進(jìn)度條),然后js動(dòng)態(tài)改變進(jìn)度條的樣式(長(zhǎng)度),自己控制一個(gè)可取的范圍

當(dāng)前臺(tái)接收到后臺(tái)的響應(yīng)的時(shí)候,讓進(jìn)度條加載到100%,關(guān)閉模態(tài)框(隱藏進(jìn)度條),刷新數(shù)據(jù)。。

關(guān)于百分比的顯示,我這里使用了Vue.js來代理,js改變vue.length的值,間接改變前臺(tái)百分比的顯示。當(dāng)然,條條大路通羅馬,沒有最好的設(shè)計(jì),只有更好的思想。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論