您好,登錄后才能下訂單哦!
使用swiper怎么實(shí)現(xiàn)無限輪播?很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。
完整代碼
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" href="swiper/css/swiper-3.4.2.min.css" rel="external nofollow" > <script src="swiper/js/swiper-3.4.2.min.js"></script> <style type="text/css"> .swiper-container { width: 900px; height: 300px; } </style> </head> <body> <div class="swiper-container"> <div class="swiper-wrapper"> <div class="swiper-slide box1"><img src="img/a.jpg"></div> <div class="swiper-slide box2" ><img src="img/b.jpg"></div> <div class="swiper-slide box3"><img src="img/c.jpg"></div> </div> <!-- 如果需要分頁器 --> <div class="swiper-pagination"></div> <!-- 如果需要導(dǎo)航按鈕 --> <div class="swiper-button-prev"></div> <div class="swiper-button-next"></div> <!-- 如果需要滾動(dòng)條 --> <!--<div class="swiper-scrollbar"></div>--> </div> </div> <script> var mySwiper = new Swiper ('.swiper-container', { direction: 'horizontal', loop: true, // 如果需要分頁器 pagination: '.swiper-pagination', // 如果需要前進(jìn)后退按鈕 nextButton: '.swiper-button-next', prevButton: '.swiper-button-prev', autoplay : 1000, speed:100, // 如果需要滾動(dòng)條 // scrollbar: '.swiper-scrollbar', effect : 'coverflow', slidesPerView: 3, centeredSlides: true, coverflow: { rotate: 30, stretch: 10, depth: 60, modifier: 2, slideShadows : true } }) </script> </body> </html>
如何使用swiper寫輪播
之前大家都寫過輪播圖吧,相信在寫輪播圖的過程中也因?yàn)楫?dāng)中的某些細(xì)節(jié)煩惱過吧,接下來我給大家講述一個(gè)方便快捷的輪播圖吧!
Swiper常用于移動(dòng)端網(wǎng)站的內(nèi)容觸摸滑動(dòng)
1.第一步先引入css---swiper.css插件和JQ---swiper.js 插件,
然后呢就開始寫輪播圖了
<div class="swiper-container">--首先定義一個(gè)容器 <div class="swiper-wrapper"> <div class="swiper-slide"><img src="" /></div> --添加圖片 <div class="swiper-slide"><img src="" /></div> <div class="swiper-slide"><img src="" /></div> </div> <div class="swiper-pagination"></div>--小圓點(diǎn)分頁器 <div class="swiper-button-prev"></div>--上一頁 <div class="swiper-button-next"></div>--下一頁 </div>
如果想讓它動(dòng)起來,那就繼續(xù)來寫js吧
var mySwiper = new Swiper(".swiper-container",{ autoplay:1000,--每秒中輪播一次 loop:true,--可以讓圖片循環(huán)輪播 autoplayDisableOnInteraction:false,--在點(diǎn)擊之后可以繼續(xù)實(shí)現(xiàn)輪播 pagination:".swiper-pagination",--讓小圓點(diǎn)顯示 paginationClickable:true,--實(shí)現(xiàn)小圓點(diǎn)點(diǎn)擊 prevButton:".swiper-button-prev",--實(shí)現(xiàn)上一頁的點(diǎn)擊 nextButton:".swiper-button-next",--實(shí)現(xiàn)下一頁的點(diǎn)擊 effect:"flip"--可以實(shí)現(xiàn)3D效果的輪播 })
Swiper輪播的也有它的好處:
1.Swiper是純javascript打造的滑動(dòng)特效插件,面向手機(jī)、平板電腦等移動(dòng)終端。
2.Swiper能實(shí)現(xiàn)觸屏焦點(diǎn)圖、觸屏Tab切換、觸屏多圖切換等常用效果。
3.Swiper開源、免費(fèi)、穩(wěn)定、使用簡單、功能強(qiáng)大,是架構(gòu)移動(dòng)終端網(wǎng)站的重要選擇!
同時(shí)也有不足之處:(使用Swiper輪播插件ajax請(qǐng)求加載圖片時(shí),無法滑動(dòng)的問題)
因?yàn)閎anner圖是動(dòng)態(tài)創(chuàng)建的,在插件開始初始化時(shí),文檔流中沒用圖片,所以沒有創(chuàng)建相應(yīng)寬度,通過調(diào)整js加載順序,問題還是沒有解決。
最后找到swiper插件 api 有屬性是可以根據(jù)內(nèi)容變動(dòng),自動(dòng)初始化插件的,添加observer:true后問題解決!
var mySwiper = new Swiper ('.swiper-container', { pagination: '.swiper-pagination', autoplay: 5000, loop: true, observer:true,//修改swiper自己或子元素時(shí),自動(dòng)初始化swiper observeParents:true,//修改swiper的父元素時(shí),自動(dòng)初始化swiper })
Swiper擁有豐富的API接口。(不過關(guān)于中文文檔不多,沒找著。)能夠讓開發(fā)者生成個(gè)人獨(dú)有的分頁器(pagination),上下滑塊的按鈕
以及4個(gè)回調(diào)函數(shù):1.onTouchStart
2.onTouchMove
3.onTouchEnd
4.onSlideSwitch。
以上內(nèi)容是我個(gè)人總結(jié),希望對(duì)各位有所幫助!
swiper輪播圖(逆向自動(dòng)切換類似于無限循環(huán))
swiper插件輪播圖,默認(rèn)的輪播循序是會(huì)從右向左,第一張,第二張,第三張,然后肉眼可見是的從第三張從左到右倒回第一張,這樣就會(huì)有些視覺體驗(yàn)不高,
,不過還是能夠用swiper本身的特性更改成無限循環(huán)的輪播的。
HTML代碼
<div class="course-banner-box"> <div class="swiper-container"> <div class="swiper-wrapper"> <!--四張輪播圖--> <div class="swiper-slide slide1"></div> <div class="swiper-slide slide2"></div> <div class="swiper-slide slide3"></div> <div class="swiper-slide slide4"></div> </div> <!-- Add Pagination --> <div class="swiper-pagination"></div> <!-- Add Arrows --> <div class="button-box"> <div class="button"> <!--左右按鈕--> <div class="swiper-button-next"></div> <div class="swiper-button-prev"></div> </div> </div> </div> </div>
script代碼
<script> var swiper = new Swiper('.swiper-container', { pagination: '.swiper-pagination',//pagination分頁器 nextButton: '.swiper-button-next',//前進(jìn)后退按鈕 prevButton: '.swiper-button-prev', paginationClickable: true,//參數(shù)設(shè)置為true時(shí),點(diǎn)擊分頁器的指示點(diǎn)分頁器會(huì)控制Swiper切換 spaceBetween: 30,//slide之間的距離(單位px)。 centeredSlides: true,//設(shè)定為true時(shí),活動(dòng)塊會(huì)居中,而不是默認(rèn)狀態(tài)下的居左。 loop : true,//復(fù)制多份循環(huán)(這里就是讓輪播看起來是循環(huán)的,去掉這個(gè)就恢復(fù)了默認(rèn)的swiper輪播) autoplay: 3000,//自動(dòng)切換的時(shí)間間隔(單位ms),不設(shè)定該參數(shù)slide不會(huì)自動(dòng)切換。 autoplayDisableOnInteraction: false//點(diǎn)擊后打斷auto-play }); </script>
看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注億速云行業(yè)資訊頻道,感謝您對(duì)億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。