小編給大家分享一下JavaScript如何實現輪播圖效果,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
HTML部分:
<!-- HTML部分 --> <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>輪播圖</title> <link rel="stylesheet" type="text/css" href="css/demo06.css" rel="external nofollow" /> <script src="js/demo06.js"></script> </head> <body> <div class="container"> <!-- 輪播圖區域 --> <ul class="lbimg"> <li class="on" >輪播圖1</li> <li >輪播圖2</li> <li >輪播圖3</li> <li >輪播圖4</li> <li >輪播圖5</li> </ul> <ol class="btn"> <li class="active">第1張</li> <li>第2張</li> <li>第3張</li> <li>第4張</li> <li>第5張</li> </ol> </div> </body> </html>
CSS部分
*{ margin: 0; padding: 0; list-style: none; } .container{ width: 600px; height: 400px; border: 4px double #FF6633; margin: 0 auto; } /* 輪播圖 */ .lbimg li{ width: 100%; height: 350px; text-align: center; line-height: 350px; display: none; font-size: 25px; color: #FF6633; } .lbimg .on{ display: block; } .btn{ width: 100%; height: 50px; background-color: #3CBDFF; display: flex; } .btn li{ flex: 1; color: #fff; font-weight: bold; line-height: 50px; text-align: center; font-family: "楷體"; cursor: pointer; } .btn .active{ background-color: rgba(0,0,0,0.2); transition: all ease-in-out 0.25s; }
JavaScript部分
window.onload=function(){ var lbimg=document.querySelector(".lbimg"); var lbimgs=lbimg.querySelectorAll("li"); var btn=document.querySelector(".btn"); var btns=btn.querySelectorAll("li"); for (var i = 0; i < btns.length; i++) { btns[i].index=i; btns[i].onclick=function(){ clearInterval(timer); for (var j = 0; j < lbimgs.length; j++) { lbimgs[j].className=""; } // 按鈕顏色跟著變化 for(var k=0;k<btns.length;k++){ btns[k].className=""; } // 輪播同步,點擊后圖片的位置從點擊的地方開始輪播 index=this.index; btns[this.index].className="active"; lbimgs[this.index].className="on"; timer=setInterval(autoPlay,1000); } } var index=0; // 自動輪播 index++; var timer=setInterval(autoPlay,1000); function autoPlay(){ for (var i = 0; i < lbimgs.length; i++) { lbimgs[i].className=""; } for (var j = 0; j < btns.length; j++) { btns[j].className=""; } if(index==lbimgs.length-1){ index=0; }else{ index++; } btns[index].className="active"; lbimgs[index].className="on"; } // 鼠標移動時清除定時器 lbimg.onmouseover=function(){ clearInterval(timer); } lbimg.onmouseout=function(){ timer=setInterval(autoPlay,1000); } }
以上是“JavaScript如何實現輪播圖效果”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。