有時候我們在做項目時,要用到輪播效果(不一定是banner輪播圖)的地方,自己寫太麻煩,費時間,一般都是使用已有的輪播插件,在這里我比較推薦swiper3,兼容性比較好,輪播效果齊全,基本上的輪播效果都有了,沒有的你也能通過已有的API自己寫出來。
今天我們來說下swiper3的雙向控制,兩個輪播圖可以相互控制其輪播,當(dāng)其中一個輪播時另一個也會跟著輪播。
如圖:
Swiper1.params.control = Swiper2;Swiper2.params.control = Swiper1;是控制相互輪播的關(guān)鍵。Swiper1.params.control = Swiper2需要在Swiper2初始化后,Swiper1控制Swiper2,Swiper2.params.control = Swiper1需要在Swiper1初始化后,Swiper2控制Swiper1。
當(dāng)然我們這里需要寫swiper3的API來實現(xiàn)些效果,如:
effect : 'fade',:默認(rèn):false。關(guān)閉淡出。過渡時,原slide透明度為1(不淡出),過渡中的slide透明度從0->1(淡入),其他slide透明度0。
可選值:true。開啟淡出。過渡時,原slide透明度從1->0(淡出),過渡中的slide透明度從0->1(淡入),其他slide透明度0。
loop : true,:設(shè)置為true 則開啟loop模式。loop模式:會在原本slide前后復(fù)制若干個slide(默認(rèn)一個)并在合適的時候切換,讓Swiper看起來是循環(huán)的。 loop模式在與free模式同用時會產(chǎn)生抖動,因為free模式下沒有復(fù)制slide的時間點。
slidesPerView : 2,:設(shè)置slider容器能夠同時顯示的slides數(shù)量(carousel模式)??梢栽O(shè)置為數(shù)字(可為小數(shù),小數(shù)不可loop),或者 'auto'則自動根據(jù)slides的寬度來設(shè)定數(shù)量。loop模式下如果設(shè)置為'auto'還需要設(shè)置另外一個參數(shù)loopedSlides。
lazyLoading : true,:設(shè)為true開啟圖片延遲加載,使preloadImages無效。需要將圖片img標(biāo)簽的src改寫成data-src,并且增加類名swiper-lazy。
背景圖的延遲加載則增加屬性data-background。還可以為slide加一個預(yù)加載,<div class="swiper-lazy-preloader"></div>或者白色的<div class="swiper-lazy-preloader swiper-lazy-preloader-white"></div>
當(dāng)你設(shè)置了slidesPerView:'auto' 或者 slidesPerView > 1,還需要開啟watchSlidesVisibility。
如沒特殊注明,文章均為方維網(wǎng)絡(luò)原創(chuàng),轉(zhuǎn)載請注明來自http://m.oulysa.com/news/5963.html