jQuery輪播圖是網站開發中常用的組件,它可以實現在網站首頁或頁面中展示多張圖片,并自動進行輪播。下面介紹一下jquery輪播圖的實現思路。
// 定義變量 var len = $('.banner-imgs li').length;//圖片數量 var index = 0;//顯示圖片下標 var timer = null;//計時器編號 // 綁定事件 $('.banner-index li').mouseover(function () { index = $(this).index();//獲取鼠標懸浮的li的下標 showImg();//顯示對應的圖片 }).eq(0).mouseover(); // 定義顯示圖片函數 function showImg() { $('.banner-imgs li').eq(index).stop(true,true).fadeIn(300).siblings().fadeOut(300); $('.banner-index li').removeClass('banner-index-active').eq(index).addClass('banner-index-active'); } // 定義自動輪播函數 function autoPlay() { index++; if (index == len) {index = 0;} showImg(); timer = setTimeout(autoPlay, 3000);//設置3秒后繼續輪播 } // 開始自動輪播 timer = setTimeout(autoPlay, 3000);
以上代碼中,首先定義了三個變量:圖片數量len、顯示圖片下標index和計時器編號timer。然后通過綁定mouseover事件,當鼠標懸浮在輪播圖下方的小圓點上時,獲取對應的下標值,通過showImg函數將對應的圖片顯示出來。而在showImg函數中,使用fadeIn和fadeOut方法對圖片進行漸隱漸顯的效果,并同時修改對應下標值的小圓點的樣式,以便區分哪個圖片處于當前狀態。
而對于自動輪播,則是通過使用setTimeout方法實現的。首先定義一個名為autoPlay的函數,函數中先將index值+1,并進行判斷,如果index值已經等于圖片數量,則將index重新賦為0,否則繼續顯示對應的圖片。同時,在函數末尾再次設置setTimeout方法,讓定時器每3秒鐘自動執行一次autoPlay函數,這樣就實現了自動輪播的效果。
上一篇css怎么做網站
下一篇jQuery輸入框置空