您好,登錄后才能下訂單哦!
利用jQuery實(shí)現(xiàn)一個(gè)帶進(jìn)度條的輪播圖?相信很多沒有經(jīng)驗(yàn)的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
1.html模塊
<div class="banner"> <ul> <li > <img src="img/con1.png" /> <div class="nav"></div> <div class="bar"> <p></p> </div> </li> <li > <img src="img/con2.png" /> <div class="nav"></div> <div class="bar"> <p></p> </div> </li> <li > <img src="img/con3.png" /> <div class="nav"></div> <div class="bar"> <p></p> </div> </li> </ul> </div>
2.css模塊
<style type="text/css"> *{ margin: 0; padding: 0; list-style: none; } .banner{ width: 100%; height: 600px; position: relative; } ul li{ width: 100%; height: 600px; position: absolute; top: 0; left: 0; overflow:hidden; } ul li img{ width: 100%; height: 600px; position: absolute; left: -100%; } .nav{ width: 100%; height: 70px; background: rgba(255,255,255,0.3); position: absolute; bottom: 0; } .bar{ width: 80%; height: 3px; background-color: #999; position: absolute; bottom: 0; left: 10%; } .bar p{ width: 0px; height: 3px; background-color: green; } </style>
3.jQuery模塊
<script src="js/jquery-3.5.1.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> var i=0;//定義當(dāng)前索引 imgChange();//初始化調(diào)用 //定時(shí)切換 setInterval("imgChange()",6000); //圖片輪播的函數(shù) function imgChange(){ //進(jìn)度條完成后顯示下一張背景 $("ul li").eq(i).fadeIn(100).siblings().fadeOut(100); //初始化文字圖片---設(shè)置到外部 $("ul li").eq(i).find("img").css("left","-100%"); //初始化進(jìn)度條 $("ul li").eq(i).find("p").css("width","0px"); //設(shè)置文字圖片從左進(jìn)入的動(dòng)畫 $("ul li").eq(i).find("img").animate({"left":"0px"},500,function(){ //設(shè)置進(jìn)度條動(dòng)畫 $("ul li").eq(i).find("p").animate({"width":"100%"},5000,function(){ $("ul li").eq(i).find("img").animate({left:"100%"},400); //改變當(dāng)前索引,當(dāng)索引為最后一個(gè)則設(shè)為0,否則就加一 if(i>=$("ul li").length-1){ i=0 }else{ i++; } }) }) } </script>
4.方法二
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>帶進(jìn)度條的輪播圖</title> <script src="js/jquery-3.5.1.js" type="text/javascript" charset="utf-8"></script> <script type="text/javascript"> $(function () { // 初始環(huán)境 var i=0,m; tin(i); // 定時(shí)器 m=setInterval(function () { if (i>=2) { i=0; }else{ i++; } tin(i); },5000); }) // 動(dòng)畫效果 var tin = function (i) { $(".cont li").eq(i).find("img").css("left","-100%"); $(".bar span").css("width","0%"); $(".cont li").eq(i).fadeIn(100).siblings().fadeOut(100); $(".cont li").eq(i).find("img").animate({left:"0%"},1000); $(".bar span").animate({width:"100%"},4500,function () { $(".cont li").eq(i).find("img").animate({left:"100%"},400); }); } </script> <style type="text/css"> *{ margin: 0; padding: 0; list-style: none; } .box{ width: 100%; height: 630px; position: relative; } .cont{ width: 100%; height: 630px; position: relative; overflow: hidden; } .cont li{ width: 100%; height: 630px; position: absolute; top: 0; left: 0; } .bar{ width: 70%; height: 3px; position: absolute; bottom: 0px; left: 15%; background-color: white; border-radius: 50px; } .bar span{ width: 0px; display: block; height: 80%; background-color: green; border-radius: 50px; } .cont li img{ width: 100%; height: 630px; position: absolute; left: -100%; top: 0; } .con1{ background: url(img/bg1.jpg) center; } .con2{ background: url(img/bg2.jpg) center; } .con3{ background: url(img/bg3.jpg) center; } .pav{ width: 100%; height: 70px; position: absolute; bottom: 0px; background-color: rgba(255,255,255,0.3); } </style> </head> <body> <div id="main"> <div id="box" class="box"> <!--圖片--> <ul class="cont"> <li class="con1"><img src="img/con1.png"/></li> <li class="con2"><img src="img/con2.png"/></li> <li class="con3"><img src="img/con3.png"/></li> </ul> <div class="pav"></div> <!--進(jìn)度條--> <div class="bar"> <span></span> </div> </div> </div> </body> </html>
看完上述內(nèi)容,你們掌握利用jQuery實(shí)現(xiàn)一個(gè)帶進(jìn)度條的輪播圖的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。