溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

使用swiper怎么實(shí)現(xiàn)無限輪播

發(fā)布時(shí)間:2021-05-31 18:04:06 來源:億速云 閱讀:505 作者:Leah 欄目:web開發(fā)

使用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ì)億速云的支持。

向AI問一下細(xì)節(jié)

免責(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)容。

AI