真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

js如何實現(xiàn)自定義進度條效果-創(chuàng)新互聯(lián)

這篇文章主要介紹js如何實現(xiàn)自定義進度條效果,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于成都網(wǎng)站建設、做網(wǎng)站、銅川網(wǎng)絡推廣、重慶小程序開發(fā)、銅川網(wǎng)絡營銷、銅川企業(yè)策劃、銅川品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們大的嘉獎;創(chuàng)新互聯(lián)為所有大學生創(chuàng)業(yè)者提供銅川建站搭建服務,24小時服務熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com

效果圖:

js如何實現(xiàn)自定義進度條效果

代碼如下:



 
  
  Staged progress bar
  
   *{margin:0;padding:0;}
   html,body{height:100%;}
   ul{list-style:none;}
   .cf:after{content:"";display:block;clear:both;height: 0;}
   #bar{height:20px;margin:100px 10px; margin-left: 50px}
   #bar div{float:left;position:relative;}
   #bar .staged, #bar .progress{border-color:#4CA8FF;}
   #bar .staged i{position:relative;overflow:hidden;display:block;width:inherit;height:inherit;}
   #bar .staged i:before{content:"";display:block;width:0;height:inherit;border-radius:50%;}
   #bar .progress {width:120px;height:inherit;margin-left:-4px;z-index:1;border-style:solid;border-width:2px 0;}
   #bar .progress:nth-child(2) i{border-left-width:2px;border-top-left-radius:6px;border-bottom-left-radius:6px;}
   #bar .progress:nth-child(2){border-left-width:2px;border-top-left-radius:10px;border-bottom-left-radius:10px;}
   #bar .progress:last-child{border-right-width:2px;border-top-right-radius:10px;border-bottom-right-radius:10px;}
   #bar .progress i{width:0;height:inherit;display:block;border-radius:0 10px 10px 0;position:relative;font-style:normal;}
   #bar .progress, #bar .staged{background:#7d7d7d;}
   #bar .sp i:before, #bar .progress i{background:#4CA8FF;}
   #bar .staged:not(:first-child){margin-left:-4px; }
   #bar .staged:before{position:absolute;content:attr(data-text);width:inherit;height:inherit;top:90%;left:0;}
   #bar .staged:after{content:attr(data-value);color:#fff;width:inherit;height:inherit;position:absolute;top:0;left:0;}
   #bar .sp i:before{width:100%;transition:width 1s;}
   .msg:before, .msg:after{display:block;position:absolute;border-style:solid;border-color:#ccc;background:#fff;top:30px;}
   .msg:before{content:attr(data-text);width:200px;height:40px;line-height:40px;font-size:12px;text-align:center;border-radius:4px;border-width:1px;top:-68px;left:calc(100% - 114px);}
   .msg:after{content:"";width:14px;height:14px;transform:rotate(45deg);border-width:0 1px 1px 0;top:-34px;left:calc(100% - 20px);}
  
 
 
  
   
   
   
                                     var progressBar = (function(){     var $ = function(sele){      return document.querySelectorAll(sele);     }     return function(a){      var getValue = function(obj,attr){       return Number(obj.getAttribute(a.value));      }      var box = $(a.box)[0];      var value = getValue(box);      var text = box.getAttribute(a.text);      var staged = $(a.staged);      var progress = $(a.progress);      var i = 0, index = 0, num = 0, numV = 0, n = 1, af_index = 0, timeout = 0, stopAm = null;      var af = function(fn){       if(!requestAnimationFrame || !cancelAnimationFrame){        clearTimeout(af_index);        af_index = setTimeout(fn, 1000/60);       }       else{        cancelAnimationFrame(af_index);        af_index = requestAnimationFrame(fn);       }      }      var setMsg = function(){       var msg = progress[index];       if(a.note){         var arr = text.split(a.note);         text = arr[0] + n + arr[1];       }       msg.setAttribute("data-text", text);       msg.className = a.msg;      }      var animation = function(){       if(i == 0){        if(staged.length == index + 1){         numV = value * 2;        }        else numV = getValue(staged[index + 1]);        if(n == 0) {         progress[index].style.width = "1%";         return        };        if(n < 0 && staged.length > index + 1){         n = numV - value;         if(Number(progress[index].style.width.split("%")[0])<5) progress[index].style.width = "3%";         setMsg();         return;        }       }       num = Math.ceil(++i * numV / 100);       if(num > value){        num = value;        //console.log(num)        n = numV - num;        if(n > 0){         if(staged.length > index + 1) setMsg();         return;        }       }       if(i == 100){        staged[index + 1].className += " " + a.stagedProgress;       }       if(i > 105){ //105% 寬,自己根據(jù)樣式調整。        num = numV;        index++;        i = 0;        timeout = setTimeout(function(){         af(animation);         clearTimeout(timeout);        }, a.stagedSleep);        return;       }       progress[index].style.width = i + "%";       af(animation);      }      animation()     }    })();    progressBar({     box : "#bar",     text : "data-text", // box 的屬性     note : "[number]", // box 的屬性 (可以省略,計算好直接寫入提示語句。);     msg : "msg",     staged : ".staged",     progress : ".progress i",     stagedProgress : "sp",     value : "data-value",     stagedSleep : "900",     sleep : "3000"    });     

以上是“js如何實現(xiàn)自定義進度條效果”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)網(wǎng)站建設公司行業(yè)資訊頻道!

另外有需要云服務器可以了解下創(chuàng)新互聯(lián)建站www.cdcxhl.com,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


文章標題:js如何實現(xiàn)自定義進度條效果-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://weahome.cn/article/dejjdc.html

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部