Rumah > hujung hadapan web > tutorial js > Panduan untuk menggunakan $(this).index dan $.each dalam jQuery_jquery

Panduan untuk menggunakan $(this).index dan $.each dalam jQuery_jquery

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Lepaskan: 2016-05-16 16:30:54
asal
1475 orang telah melayarinya

Sebagai tindak balas kepada keperluan tertentu di tempat kerja, kesan menukar tab ialah membuat perubahan HTML yang berbeza berdasarkan jumlah bilangan elemen kandungan di bawah setiap pilihan (jika kandungan di bawah tab itu kosong, ia sama dengan XXX, sebaliknya XXX )

Salin kod Kod adalah seperti berikut:

$(fungsi(){
           $(".bao").hide();
              $(".bao").eq(0).show();
              $(".head li").klik(function(){
                 $(this).addClass('cur').siblings().removeClass("cur");
$(".bao").eq($(this).index()).show().adik-beradik(".bao").hide()
                var a=$(".bao").eq($(this).index()).find('li')
Jika(a.length<0){
alert("Saya kurang daripada 0!!")
               }
           });
            fungsi moren(){
            var moren=$(".moren").find('li')
Jika(moren.length==0){
alert("Saya kosong~tiada peluang")
               }
          }
})

Mula-mula, isytiharkan bahawa pengepala tab dipanggil pengepala

Kandungan tab dipanggil kandungan~

Kaedah pertama yang terlintas di fikiran (kaedah bodoh):

Pengikatan menambah acara klik. Dilaksanakan apabila menukar pengepala Pengepala memperoleh kandungan yang sepadan mengikut indeksnya sendiri Selepas melintasi elemen li di bawah kandungan, jumlah kandungan yang sepadan dengan setiap pengepala diperoleh.

Kerana inilah yang ditemui selepas acara klik, tetapi elemen pertama dalam kepala diabaikan, saya mahu ia mula dilaksanakan apabila penyemak imbas dimuat semula, jadi saya menambah lagi untuk elemen pertama di kepala kelas A menilai ini kelas kelas. Akhirnya~

Hanya dapatkan kesan yang saya mahu. Apabila nombor==0||!==0, apa yang saya mahu akan dilaksanakan.

Tetapi pertimbangkan. Sesuatu yang tidak dijangka mungkin berlaku kemudian. Saya tidak mahu ia dilaksanakan apabila saya mengklik. Saya mahu ia dilaksanakan untuk saya selepas penyemak imbas dimuat semula. Jadi sebagai newbie, saya bekerja keras untuk menghasilkan kaedah

Cara lain, saya rasa ini lebih baik~:

Salin kod Kod adalah seperti berikut:

$(fungsi(){
            $(".bao").hide();
              $(".bao").eq(0).show();
              $(".head li").klik(function(){
                 $(this).addClass('cur').siblings().removeClass("cur");
$(".bao").eq($(this).index()).show().adik beradik(".bao").hide()
           });
        var aaa= $(".bao ul")
aaa.setiap(fungsi(){
            var b=$(ini).kanak-kanak('li').panjang
makluman(b)
Jika(b==0){
                                           $(ini).append("
saya telah ditambahkan selepas 0
")
            }
          })
})

Kaedah ini menggunakan $.each()

Ia lebih mudah, dan buat masa ini saya mendapat hasil yang saya inginkan. $.each() merentasi setiap elemen kandungan, dan kemudian mendapat jumlah bilangan elemen li di bawah kandungan itu sendiri untuk menilai dan mendapatkan kesan yang saya mahu

Label berkaitan:
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