亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

jquery彩色投票進度條簡單實例演示

2019-11-20 11:11:21
字體:
來源:轉載
供稿:網友

一、需求
如下圖

重點是要實現進度條。

二、分析
html5新增及刪除標簽一文中提到過html5新增了progress標簽。但是肯定有兼容性問題。生成環境不適用,所以要模擬實現。

原理:動態設置<p>的子元素<span>的寬度值。

1、簡單的雛形
假設只有一個進度條,如下,我們只需要知道p元素的寬度,span元素的百分比,相乘即得到span的寬度,瀏覽器加載時動態設置span的寬度即可實現進度條的效果。

<style>.long{width:100px;border:1px solid #7f7f7f;height:14px;background-color:#d6d6d6;}.short{float:left;height:14px;background-color:#0FF;}</style><body><P class="long"><span class="short"></span></P><script src="http://code.jquery.com/jquery-latest.js"></script><script>var percent=0.5;var longWidth=100;var shortWidth=percent*longWidth;$(".short").animate({width:shortWidth+"px"},'slow');</script></body>

2、投票進度條實現過程
第一步:結構如下

<meta charset="utf-8"><style>/*樣式重置*/ul,h4,p{margin:0;padding:0;}/*清除浮動*/.clearfix:after{visibility:hidden;display:block;font-size:0;content:" ";clear:both;height:0;}body { font: 12px/1.5 arial, 宋體; }html, body { color: #333333; }/*投票css*/.vote-box-list{border:1px solid red;position:absolute;}.vote-box-list li{list-style:none;margin:10px 0;}.vote-item-wrap h4,.vote-item-wrap .vnum{float:left;font-size:14px;font-weight:normal;line-height:16px;}.vote-item-wrap p{float:left;height:14px;width:200px;border:1px solid #E2E2E2;background-color:#EFEFEF;margin:0 10px;}.vote-item-wrap p span{float:left;height:14px;/*width:30px;background-color:#c2f263;*/}</style><ul class="vote-box-list clearfix" id="appVoteBox"> <li class="vl-item" id="voteItem0"> <div class="vote-item-wrap clearfix">  <h4>A:</h4>  <p class="litem"><span></span></p>  <span class="vnum">79(2%)</span> </div> </li> <li class="vl-item" id="voteItem1" > <div class="vote-item-wrap clearfix">  <h4>B:</h4>  <p class="litem"><span></span></p>  <span class="vnum">1986(61%)</span> </div> </li> <li class="vl-item" id="voteItem2"> <div class="vote-item-wrap clearfix">  <h4>C:</h4>  <p class="litem"><span></span></p>  <span class="vnum">1153(36%)</span> </div> </li> <li class="vl-item" id="voteItem3" > <div class="vote-item-wrap clearfix">  <h4>D:</h4>  <p class="litem"><span></span></p>  <span class="vnum">415(13%)</span> </div> </li> <li class="vl-item" id="voteItem4" > <div class="vote-item-wrap clearfix">  <h4>E:</h4>  <p class="litem"><span></span></p>  <span class="vnum">89(3%)</span> </div> </li></ul>

給span增加一個width和背景色,就可以出現進度條的效果。這一步用js實現。

第二步、js設置span的寬度

<script src="http://code.jquery.com/jquery-latest.js"></script><script>var Vote={};Vote.ListShow=(function(){ var longWidth; var percentArr=[]; var shortWidth=[]; var spanArr=[];  /*初始化*/ function init(o){  voteId=o.id;  longWidth=o.width;  percentArr=o.percent;  shortWidth=calWidth();  spanArr=findSpans(); } /*根據百分比計每個算span的實際寬度*/ function calWidth(){  var arr=[];  for(var i=0;i<percentArr.length;i++){   var tempLength=percentArr[i]*longWidth;   arr.push(tempLength);  }  return arr; } /*將全部span存為一個數組*/ function findSpans(){  var litems=$("#"+voteId).find(".litem");  var arr=[]  for(var i=0;i<litems.length;i++){   arr.push(litems[i].children[0]);  }  return arr; } /*每個span元素設置寬度*/ function setWidth(){  for(i=0;i<percentArr.length;i++){   $(spanArr[i]).animate({width:shortWidth[i]+"px"},'slow');   $(spanArr[i]).css({'background-color':"#c2f263"});   }   } return {init:init,set:setWidth};})();/*調用*/Vote.ListShow.init({ id:'appVoteBox', width:200-2 , percent:[0.02,0.61,0.36,0.13,0.3],});Vote.ListShow.set();</script>

效果:

 第三步,js設置span的背景色
 第二步中的背景色都是如下設置為一樣。

$(spanArr[i]).css({'background-color':"#c2f263"});  現在隨機生成背景色,做一個彩色的進度條。<script src="http://code.jquery.com/jquery-latest.js"></script><script>var Vote={};Vote.ListShow=(function(){ var longWidth; var percentArr=[]; var shortWidth=[]; var spanArr=[]; var colorArr=[];  /*初始化*/ function init(o){  voteId=o.id;  longWidth=o.width;  percentArr=o.percent;  shortWidth=calWidth();  spanArr=findSpans();  colorArr=genColor(); } /*根據百分比計每個算span的實際寬度*/ function calWidth(){  var arr=[];  for(var i=0;i<percentArr.length;i++){   var tempLength=percentArr[i]*longWidth;   arr.push(tempLength);  }  return arr; } /*將全部span存為一個數組*/ function findSpans(){  var litems=$("#"+voteId).find(".litem");  var arr=[]  for(var i=0;i<litems.length;i++){   arr.push(litems[i].children[0]);  }  return arr; } /*o是顏色數組,隨機選擇length種顏色返回*/ function genColor() {   var o = [];   var n = ["#5dbc5b", "#6c81b6", "#9eb5f0", "#a5cbd6", "#aee7f8", "#c2f263", "#d843b3", "#d8e929", "#e58652", "#e7ab6d", "#ee335f", "#fbe096", "#ffc535"]; //彩色進度條  var colorsArr = n.slice();   for (var i = 0;i < percentArr.length; i++){    //Math.random()返回0.0 ~ 1.0 之間的一個偽隨機數。   //Math.floor()向下取整   var k = Math.floor(Math.random()* colorsArr.length);    o.push(colorsArr[k]);    //取完一種顏色后就從顏色數組中刪除   colorsArr.splice(k, 1);    if (colorsArr.length == 0){    colorsArr = n.slice()}   }   return o; }  /*每個span元素設置寬度*/ function setWidth(){  for(i=0;i<percentArr.length;i++){   $(spanArr[i]).animate({width:shortWidth[i]+"px"},'slow');   $(spanArr[i]).css({'background-color':colorArr[i]});   }   } return {init:init,set:setWidth};})();/*調用*/Vote.ListShow.init({ id:'appVoteBox', width:200-2 , percent:[0.02,0.61,0.36,0.13,0.3],});Vote.ListShow.set();</script>

最終效果:

以上就是彩色的進度條特效,特別適合用于投票,效果很明顯,希望對大家的學習有所幫助,會喜歡上這個彩色進度條。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲免费小视频| 久久九九精品99国产精品| 欧美性猛交xxxx乱大交蜜桃| 精品女同一区二区三区在线播放| 国产精品美女无圣光视频| 欧美www在线| 欧美专区在线视频| 国产福利成人在线| 欧美极品美女视频网站在线观看免费| 国产成人a亚洲精品| 国产精品久久久精品| 国产精品中文在线| 精品毛片网大全| 久久久久久久一| 亚洲第一在线视频| 91大神在线播放精品| 奇米一区二区三区四区久久| 国产精品美女免费视频| 久久久精品影院| 欧美日韩第一视频| 欧美成人高清视频| 国产精品久久久久久久久久新婚| 国产一区玩具在线观看| 久久九九免费视频| 日本精品一区二区三区在线播放视频| 国产精品久久久久久中文字| 欧美精品在线极品| 亚洲天堂男人的天堂| www.日韩系列| 欧美丰满老妇厨房牲生活| 亚洲精品日韩激情在线电影| 欧美日韩加勒比精品一区| 亚洲成人999| 日本精品久久电影| 日韩视频在线免费观看| 欧美在线性爱视频| 日韩免费不卡av| 日韩av男人的天堂| 菠萝蜜影院一区二区免费| 日韩av成人在线观看| 欧美精品一二区| 欧美精品久久一区二区| 97视频免费在线看| 精品久久中文字幕久久av| 亚洲a级在线观看| 日韩亚洲欧美中文高清在线| 国产精品自拍偷拍视频| 久久中文字幕一区| 国产欧美一区二区三区在线| 97视频网站入口| 国产福利精品视频| 欧美日韩电影在线观看| 第一福利永久视频精品| 九九九久久国产免费| 国产精品国模在线| 亚洲欧洲中文天堂| 国内精品久久久久久| 98午夜经典影视| 日韩国产高清视频在线| 国产有码在线一区二区视频| 欧美日韩第一页| 欧美精品少妇videofree| 91精品视频免费| 欧美日韩中国免费专区在线看| 国产精品成人播放| 国模精品视频一区二区| 亚洲国产精品一区二区久| 日韩美女视频在线观看| 青青草精品毛片| 久久精品国产亚洲精品2020| 国产亚洲视频中文字幕视频| 日韩精品在线免费观看| 亚洲欧洲免费视频| 91在线视频九色| 日本高清视频精品| 日本免费一区二区三区视频观看| 九色精品免费永久在线| 91日韩在线视频| 欧美电影电视剧在线观看| 国产亚洲xxx| 欧美激情免费在线| 中文在线资源观看视频网站免费不卡| 久久久最新网址| 91系列在线观看| 亚洲第一区第一页| 日韩精品免费综合视频在线播放| 日本免费久久高清视频| 伊人久久综合97精品| 92裸体在线视频网站| 色先锋资源久久综合5566| 欧美日韩在线视频一区二区| www日韩欧美| 91成人在线观看国产| 在线播放国产一区中文字幕剧情欧美| 欧美精品手机在线| 久久精品一偷一偷国产| 中文字幕欧美视频在线| 91po在线观看91精品国产性色| 激情久久av一区av二区av三区| 亚洲欧美精品在线| 亚洲最大福利网站| 亚州国产精品久久久| 在线视频免费一区二区| 色99之美女主播在线视频| 日韩福利在线播放| 日韩电影中文字幕在线观看| 国语自产精品视频在线看抢先版图片| 久久精品视频在线观看| 国产在线拍偷自揄拍精品| 欧美裸体男粗大视频在线观看| 中文字幕精品在线视频| 亚洲人成电影在线播放| 久久视频免费在线播放| 国产69精品久久久久9999| 国产精品视频999| 日韩在线视频网| 大胆欧美人体视频| 97av在线视频| 国产精品一区二区女厕厕| 日韩高清电影免费观看完整版| 欧美成人剧情片在线观看| 亚洲人精品午夜在线观看| 在线观看国产欧美| 欧美激情视频在线免费观看 欧美视频免费一| 亚洲成av人片在线观看香蕉| 中文字幕亚洲一区| 久久国产天堂福利天堂| 九九九热精品免费视频观看网站| 久久久国产精品免费| 欧美日韩视频在线| 国产婷婷97碰碰久久人人蜜臀| 国产成人鲁鲁免费视频a| 亚洲国产精品99| 91情侣偷在线精品国产| 精品久久久久久久久久久久久久| 国产亚洲欧美另类中文| 插插插亚洲综合网| 成人写真视频福利网| 国产精品久久久久久久久免费| 亚洲精品www| 亚洲人成毛片在线播放| 成人黄色影片在线| 国产成人激情小视频| 成人激情在线观看| 国产精品爱啪在线线免费观看| 欧美亚洲国产成人精品| 欧美日韩性视频在线| 欧美国产视频一区二区| 国产亚洲一级高清| 欧美裸身视频免费观看| 在线视频精品一| 亚洲精品91美女久久久久久久| 国产91精品黑色丝袜高跟鞋| 91精品国产自产在线观看永久| 亚洲国内精品在线| 国产日韩欧美中文在线播放| 日韩av手机在线| 成人黄色av播放免费| 欧美午夜丰满在线18影院| 亚洲图片在线综合| 国产亚洲福利一区| 国产精品777| 欧美疯狂xxxx大交乱88av| 91精品久久久久久综合乱菊|