Rumah >hujung hadapan web >tutorial js >Bagaimana untuk menggunakan JavaScript untuk melaksanakan kesan penukaran karusel imej dan menambah animasi fade-in dan fade-out?

Bagaimana untuk menggunakan JavaScript untuk melaksanakan kesan penukaran karusel imej dan menambah animasi fade-in dan fade-out?

WBOY
WBOYasal
2023-10-18 12:12:351444semak imbas

JavaScript 如何实现图片的轮播切换效果并加入淡入淡出动画?

JavaScript Bagaimana untuk melaksanakan kesan penukaran karusel imej dan menambah animasi fade-in dan fade-out?

Karusel imej ialah salah satu kesan biasa dalam reka bentuk web Dengan menukar gambar untuk memaparkan kandungan yang berbeza, ia memberikan pengguna pengalaman visual yang lebih baik. Dalam artikel ini, saya akan memperkenalkan cara menggunakan JavaScript untuk melaksanakan kesan penukaran karusel imej dan menambah kesan animasi fade-in dan fade-out. Di bawah ialah contoh kod khusus.

Pertama, kita perlu mencipta bekas yang mengandungi imej karusel dalam halaman HTML dan menambah beberapa imej padanya, seperti yang ditunjukkan di bawah:

<div class="slideshow-container">
  <img src="img1.jpg">
  <img src="img2.jpg">
  <img src="img3.jpg">
</div>

Seterusnya, kami Anda boleh menggunakan CSS untuk menetapkan gaya asas imej karusel, termasuk saiz bekas, kedudukan imej, dsb. Kodnya adalah seperti berikut:

.slideshow-container {
  width: 800px;
  height: 400px;
  position: relative;
  overflow: hidden;
}

.slideshow-container img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

Dalam JavaScript, kita boleh menggunakan setInterval() berfungsi untuk menukar imej dengan kerap. Pertama, kita perlu mendapatkan bekas karusel dan semua elemen imej di dalamnya Kodnya adalah seperti berikut:

var container = document.querySelector('.slideshow-container');
var slides = container.querySelectorAll('img');

Seterusnya, kita boleh menentukan pembolehubah untuk merekodkan indeks imej yang sedang dipaparkan, dan fungsi. untuk menukar imej. Apabila menukar gambar, tetapkan ketelusan gambar yang dipaparkan pada masa ini kepada 0 dan ketelusan gambar seterusnya yang akan dipaparkan kepada 1 untuk mencapai kesan fade-in dan fade-out. Kodnya adalah seperti berikut:

var currentIndex = 0;

function changeSlide() {
  slides[currentIndex].style.opacity = 0;
  
  currentIndex = (currentIndex + 1) % slides.length;
  
  slides[currentIndex].style.opacity = 1;
}

Akhir sekali, kita boleh menggunakan fungsi setInterval() untuk kerap memanggil fungsi menukar gambar untuk mencapai kesan karusel automatik. Kod tersebut adalah seperti berikut:

setInterval(changeSlide, 3000);

Melalui kod di atas, kita boleh mencapai kesan penukaran karusel imej dan menambah kesan animasi fade-in dan fade-out. Apabila halaman dimuatkan, imej karusel akan mula bertukar secara automatik dan secara automatik bertukar kepada imej seterusnya setiap 3 saat.

Di atas ialah cara menggunakan JavaScript untuk mencapai kesan penukaran karusel imej dan menambah animasi fade-in dan fade-out. Harap ini membantu!

Atas ialah kandungan terperinci Bagaimana untuk menggunakan JavaScript untuk melaksanakan kesan penukaran karusel imej dan menambah animasi fade-in dan fade-out?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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