JavaScript dan Jquery: Cari indeks elemen yang diklik
P粉022140576
P粉022140576 2023-08-25 14:55:21
0
1
553
<p>Saya sedang membina tayangan slaid dan saya menghadapi kesukaran dengan soalan berikut - Bagaimanakah cara saya mencari kedudukan (indeks) dalam tatasusunan apabila label diklik? Bahagian kod berikut memperoleh semua teg </p> <pre class="brush:php;toolbar:false;">this.thumbs = this.nav.find('a');</pre> <p>Di mana hendak bermula? Satu lagi masalah - apabila label diklik, saya perlu menukar kelas div di dalam label (label div perlu mendapatkan kelas promo_tumb_current dan div dengan label itu perlu kehilangannya). </p> <p>Kod HTML: </p> <pre class="brush:php;toolbar:false;"><div class="promo_tumbs col_12"> <div data-dir="prev" class="prev"></div> <div data-dir="next" class="next"></div> <div class="promo_tumbs_centar"> <a href="#first"><div class="promo_tumb promo_tumb_current"></div></a> <a href="#second"><div class="promo_tumb"></div></a> <a href="#thrid"><div class="promo_tumb"></div></a> <a href="#fourh"><div class="promo_tumb"></div></a> <a href="#fifth"><div class="promo_tumb"></div></a> <a href="#fifth"><div class="promo_tumb"></div></a> <a href="#fifth"><div class="promo_tumb"></div></a> </div> </div></pra> <p>JS代码:</p> <pre class="brush:php;toolbar:false;"><script> fungsi Slider(bekas, navigasi){ ini.bekas = bekas; this.nav = nav; this.li = this.container.find('li'); this.li_width = this.li.first().width(); this.li_len = this.li.length; this.thumbs = this.nav.find('a'); this.current = 0; } Slider.prototype.transition = fungsi (koord){ this.container.stop().animate({ 'margin-left' : koordinat || -(this.current * this.li_width) }) } Slider.prototype.set_current = function(dir){ var pos = this.current; jika (dir === 'seterusnya') {pos++} else if (dir === 'prev') {pos--} this.current = (pos < 0) ? this.li_len - 1 : pos % this.li_len; pos balik; } var slider = new Slider($('div.promo_inner ul'), $('div.promo_tumbs')); slider.nav.find('div').on('klik', function(){ if ($(this).attr("data-dir") === undefined ) { var index = slider.thumbs.index(); console.log(index) } lain { slider.set_current($(this).data('dir')); } slider.transition(); })</pre> <p></p>
P粉022140576
P粉022140576

membalas semua(1)
P粉426780515

Saya rasa apa yang anda perlukan ialah

http://api.jquery.com/index/

Sebagai contoh, dalam pengendali acara anda (di mana ini adalah teg yang diklik):

var index = thumbs.index($(this))
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan