Rumah > hujung hadapan web > Soal Jawab bahagian hadapan > Mari kita bincangkan tentang cara jquery boleh mencapai kesan karusel yang lancar

Mari kita bincangkan tentang cara jquery boleh mencapai kesan karusel yang lancar

PHPz
Lepaskan: 2023-04-10 10:24:46
asal
804 orang telah melayarinya

Imej karusel lancar ialah kaedah paparan yang sangat popular dalam reka bentuk web pada masa kini, yang boleh membawa pengalaman visual yang baik kepada pengguna. jQuery ialah perpustakaan JavaScript yang sangat biasa digunakan yang boleh membantu kami melaksanakan karusel lancar dengan mudah.

1. Struktur HTML

Pertama, anda perlu membuat senarai ul untuk memaparkan imej, dan terdapat imej yang sepadan di dalam setiap tag li.

<div class="slider">
  <ul>
    <li><img src="image1.jpg"></li>
    <li><img src="image2.jpg"></li>
    <li><img src="image3.jpg"></li>
    <li><img src="image4.jpg"></li>
  </ul>
</div>
Salin selepas log masuk

Ini ialah struktur HTML asas Seterusnya kita perlu menambah gaya CSS untuk menjadikannya kelihatan lebih cantik.

2. Gaya CSS

Dalam fail CSS, kita perlu menetapkan gaya ul kepada display:flex untuk memaparkan imej dalam satu baris. Kita juga perlu menetapkan lebar dan ketinggian setiap li supaya semua gambar disusun pada baris yang sama. Pada masa yang sama, kita juga perlu menambah lapisan topeng pada lapisan luar ul untuk menyembunyikan limpahan imej.

.slider{
  overflow:hidden;
  position:relative;
}
ul{
  display:flex;
  width:400%;
  position:relative;
  left:0;
  margin:0;
  padding:0;
  transition:left 1s;
}
li{
  flex-basis:25%;
  margin:0;
  padding:0;
}
Salin selepas log masuk

Atribut flex-basis di sini digunakan untuk menetapkan perkadaran lebar setiap teg li kepada keseluruhan senarai ul.

3. Pelaksanaan JavaScript

Dalam fail JS, kita perlu menggunakan jQuery untuk mengawal karusel imej. Pertama, kita perlu menetapkan pemasa untuk mengawal selang karusel. Kemudian, tambahkan animasi pada pemasa untuk mengurangkan nilai kiri semua gambar dengan nilai, menyebabkan keseluruhan senarai ul bergerak ke kiri mengikut lebar gambar. Apabila gambar terakhir dicapai, ia perlu melompat ke gambar pertama dengan segera, iaitu, laraskan nilai kiri keseluruhan senarai ul kepada 0.

$(document).ready(function(){
  var timer=setInterval(autoplay,3000);
  function autoplay(){
    var imgWidth=$("li").width();
    $("ul").animate({left:"-="+imgWidth},1000,function(){
      var firstImg=$("li:first-child");
      $("ul").append(firstImg);
      $("ul").css("left",0);
    });
  }
})
Salin selepas log masuk

Dalam kod ini, mula-mula kita mendapat lebar setiap imej melalui kaedah width() jQuery, dan kemudian gunakan kaedah animate() untuk mencapai kesan animasi. Kami menetapkan nilai kiri senarai ul tolak lebar imej, kemudian masukkan teg li pertama ke penghujung senarai ul dalam fungsi panggil balik, dan kemudian laraskan nilai kiri keseluruhan senarai ul kepada 0 untuk mencapai karusel yang lancar kesan.

4. Ringkasan

Melalui langkah di atas, kita boleh menggunakan jQuery untuk melaksanakan imej karusel yang lancar. Sudah tentu, terdapat banyak kaedah pelaksanaan lain, seperti menggunakan animasi CSS3 atau rangka kerja JavaScript lain. Walau bagaimanapun, tidak kira kaedah mana yang digunakan, teras untuk merealisasikan karusel yang lancar adalah menggunakan JS untuk mengawal animasi pergerakan gambar dan menangani isu logik apabila karusel mencapai gambar terakhir.

Atas ialah kandungan terperinci Mari kita bincangkan tentang cara jquery boleh mencapai kesan karusel yang lancar. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan