cari
Rumahhujung hadapan webtutorial cssBagaimanakah saya boleh membuat peluncur gelung imej tak terhingga menggunakan JavaScript/jQuery?

How can I create an infinite image loop slider using JavaScript/jQuery?

Konsep Peluncur Infinity Loop

Artikel ini membincangkan amalan terbaik, seperti kebolehbacaan, kebolehgunaan semula kod dan amalan pengekodan yang baik, untuk membina Infinity-Image-Loop- Slider untuk tapak web menggunakan JavaScript/jQuery. Tumpuan adalah pada cara menyusun gambar untuk mencipta ilusi peluncur gelung yang tidak berkesudahan.

Melaksanakan Peluncur Gelung Infinity

Satu kaedah mudah untuk mencipta peluncur imej tak terhingga adalah seperti berikut: Anggapkan anda mempunyai imej "n" untuk slaid dalam gelung, dengan imej pertama mengikuti imej ke-n dan begitu juga sebaliknya. Buat klon imej pertama dan terakhir dan lakukan perkara berikut:

  • Tambah klon imej terakhir sebelum imej pertama.
  • Tambahkan klon imej pertama selepas imej terakhir.

Tidak kira bilangan imej, anda hanya perlu memasukkan dua item klon paling banyak.

Dengan mengandaikan semua imej adalah 100px lebar dan dipaparkan dalam bekas dengan limpahan: tersembunyi, paparan: blok sebaris dan ruang putih: nowrap, bekas yang menyimpan imej boleh dijajarkan dengan mudah dalam satu baris.

Untuk n = 4, struktur DOM akan dipaparkan seperti berikut:

offset(px)     0       100     200     300     400     500
images         |   4c   |   1   |   2   |   3   |   4   |   1c
                                                   
/*                 ^^                                       ^^
       [ Clone of the last image ]              [ Clone of the 1st image ]
*/

Pada mulanya, bekas diletakkan dengan kiri: -100px, membenarkan imej pertama dipaparkan. Untuk bertukar antara imej, gunakan animasi JavaScript pada sifat CSS yang anda pilih pada asalnya.

  • Apabila peluncur berada pada imej ke-4, beralih ke imej 1c melibatkan animasi daripada imej 4 hingga 1c. Setelah animasi selesai, serta-merta meletakkan semula pembalut gelangsar pada offset sebenar imej pertama (cth., tetapkan kiri: -100px ke bekas).
  • Begitu juga, apabila peluncur diletakkan pada elemen pertama, melakukan animasi sebelumnya dari imej 1 hingga 4c dan mengalihkan bekas ke offset imej ke-4 (kiri: -400px ke bekas) sudah memadai untuk memaparkan imej sebelumnya.

Mengatur Gelung Slaid

Rebab yang disertakan menunjukkan kesan ini. Di bawah ialah kod JavaScript/jQuery asas yang digunakan:

$(function() {
 
  var gallery = $('#gallery ul'),
      items   = gallery.find('li'),
      len     = items.length,
      current = 1,  /* the item we're currently looking */
      
      first   = items.filter(':first'),
      last    = items.filter(':last'),
      
      triggers = $('button');
  
  /* 1. Cloning first and last item */
  first.before(last.clone(true)); 
  last.after(first.clone(true)); 
  
  /* 2. Set button handlers */
  triggers.on('click', function() {

    var cycle, delta;
    
    if (gallery.is(':not(:animated)')) {
     
        cycle = false;
        delta = (this.id === "prev")? -1 : 1;
        /* in the example buttons have id "prev" or "next" */  
    
        gallery.animate({ left: "+=" + (-100 * delta) }, function() {
      
            current += delta;
       
            /** 
             * we're cycling the slider when the the value of "current" 
             * variable (after increment/decrement) is 0 or when it exceeds
             * the initial gallery length
             */          
            cycle = (current === 0 || current > len);
       
            if (cycle) {
                /* we switched from image 1 to 4-cloned or 
                   from image 4 to 1-cloned */
                current = (current === 0)? len : 1; 
                gallery.css({left:  -100 * current });
            }
        });   
     }
    
  });
});

Kesimpulan

Penyelesaian ini agak mudah dan cekap, hanya memerlukan dua operasi sisipan DOM tambahan dan logik pengurusan gelung mudah berbanding bukan -gelongsor gelung.

Walaupun pendekatan alternatif mungkin wujud, kaedah ini menyediakan penyelesaian yang praktikal dan berkesan untuk mencipta peluncur gelung infiniti.

Atas ialah kandungan terperinci Bagaimanakah saya boleh membuat peluncur gelung imej tak terhingga menggunakan JavaScript/jQuery?. 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
Kemas kini 'CSS4'Kemas kini 'CSS4'Apr 11, 2025 pm 12:05 PM

Sejak saya mula -mula berbunyi pada perkara CSS4¹, ada lebih banyak perbincangan di atasnya. Saya akan mengulangi pemikiran kegemaran saya dari orang lain di sini. Ada

Tiga jenis kodTiga jenis kodApr 11, 2025 pm 12:02 PM

Setiap kali saya memulakan projek baru, saya menyusun kod yang saya cari dalam tiga jenis, atau kategori jika anda suka. Dan saya fikir jenis ini boleh digunakan

HTTPS mudah!HTTPS mudah!Apr 11, 2025 am 11:51 AM

Saya ' telah bersalah secara terbuka merungut kerumitan HTTPS. Pada masa lalu, saya membeli sijil SSL dari vendor pihak ketiga dan menghadapi masalah

Panduan Atribut Data HTMLPanduan Atribut Data HTMLApr 11, 2025 am 11:50 AM

Semua yang anda ingin tahu mengenai atribut data dalam HTML, CSS, dan JavaScript.

Memahami kebolehubahan dalam JavaScriptMemahami kebolehubahan dalam JavaScriptApr 11, 2025 am 11:47 AM

Sekiranya anda tidak bekerja dengan kebolehubahan dalam JavaScript sebelum ini, anda mungkin mudah mengelirukan dengan memberikan pembolehubah kepada nilai baru, atau penugasan semula.

Input bentuk gaya tersuai dengan ciri CSS modenInput bentuk gaya tersuai dengan ciri CSS modenApr 11, 2025 am 11:45 AM

Ia mungkin sepenuhnya untuk membina kotak semak tersuai, butang radio, dan suis bertukar hari ini, sambil tetap semantik dan boleh diakses. Kami tidak memerlukan

Watak nota kakiWatak nota kakiApr 11, 2025 am 11:34 AM

Terdapat watak nombor superset khas yang kadang -kadang sesuai untuk nota kaki. Di sini mereka:

Cara membuat pemasa undur animasi dengan HTML, CSS dan JavaScriptCara membuat pemasa undur animasi dengan HTML, CSS dan JavaScriptApr 11, 2025 am 11:29 AM

Pernahkah anda memerlukan pemasa undur dalam projek? Untuk sesuatu seperti itu, mungkin semula jadi untuk mencapai plugin, tetapi sebenarnya lebih banyak lagi

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa

MinGW - GNU Minimalis untuk Windows

MinGW - GNU Minimalis untuk Windows

Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan