這篇文章主要介紹原生JS實現輪播圖效果的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

成都創新互聯公司專注于晉江企業網站建設,響應式網站,成都做商城網站。晉江網站建設公司,為晉江等地區提供建站服務。全流程按需定制網站,專業設計,全程項目跟蹤,成都創新互聯公司專業和態度為您提供的服務
著是通過獲取圖片偏移量實現的,也實現了無縫切換,還有一點問題就是沒有加上圖片切換的時候的延遲了。
html:
<div id="container"> <div id="list" > <img src="../image/1.jpg" alt="5"> <img src="../image/1.jpg" alt="1"> <img src="../image/2.jpg" alt="2"> <img src="../image/3.jpg" alt="3"> <img src="../image/4.jpg" alt="4"> <img src="../image/5.jpg" alt="5"> <img src="../image/1.jpg" alt="1"> </div> <div id="buttons"> <span class="on"></span> <span></span> <span></span> <span></span> <span></span> </div> <a href="javascript:;" id="prev" class="arrow"><</a> <a href="javascript:;" id="next" class="arrow">></a> </div>
js:
window.onload = function(){
//獲取元素
var container = document.getElementById('container');
var list = this.document.getElementById('list');
var buttons = document.getElementById('buttons').getElementsByTagName('span');
var prev = document.getElementById('prev');
var next = document.getElementById('next');
var index = 1;//默認第一個小圓點亮
//小圓點的點亮
function showButton() {
//遍歷小圓點的個數,當觸發onclick事件后,className為‘on'的變為‘'。
for(var i = 0;i < buttons.length; i++){
if(buttons[i].className == 'on'){
buttons[i].className = '';
break;
}
}
buttons[index - 1].className = 'on'; //原始第一個小圓點點亮,onclick事件觸發后,index+1
}
function animate (offset) {
//獲取從第一張圖片開始發生的偏移量
var newLift = parseInt(list.style.left) + offset;
list.style.left = newLift + 'px';
if(newLift > -600){
//如果偏移量的位置大于-600的時候,圖片跳轉到第五張圖片
list.style.left = -3000 + 'px';
}
if(newLift < -3000){
//如果偏移量的位置大于-3000的時候,圖片跳轉到第一張圖片
list.style.left = -600 + 'px';
}
}
next.onclick = function () {
//如果button的index為5的時候,再點擊next按鈕會返回 1;
if(index == 5){
index = 1;
}else{
index += 1;
}
showButton();
animate(-600);
}
prev.onclick = function () {
if(index == 1){
index = 5;
}else{
index -= 1;
}
showButton();
animate(600);
}
}以上是“原生JS實現輪播圖效果的方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創新互聯行業資訊頻道!
文章名稱:原生JS實現輪播圖效果的方法
文章出自:http://www.yijiale78.com/article20/jjpsjo.html
成都網站建設公司_創新互聯,為您提供品牌網站制作、面包屑導航、動態網站、移動網站建設、電子商務、用戶體驗
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯