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