Rumah > Artikel > hujung hadapan web > Pengaturcaraan bahagian hadapan lanjutan: Kuasai pemilih adalah dan tempat untuk mencapai kesan yang kompleks
Pengaturcaraan bahagian hadapan lanjutan: Kuasai keadaan dan tempat pemilih untuk mencapai kesan yang kompleks
Dalam pembangunan bahagian hadapan, menguasai pemilih lanjutan ialah kemahiran yang sangat penting. Sebagai tambahan kepada pemilih asas biasa seperti id, kelas, teg, dll., pemilih is() dan where() boleh membantu kami mencapai kesan yang lebih kompleks. Artikel ini akan memperkenalkan penggunaan pemilih is() dan where() serta memberikan beberapa contoh kod praktikal.
1. is() selector
is() selector digunakan untuk menentukan sama ada sesuatu elemen memenuhi syarat pemilih yang ditentukan. Ia mengembalikan nilai boolean yang mengembalikan benar jika elemen sepadan dengan kriteria pemilih, sebaliknya palsu.
Sintaks untuk menggunakan pemilih is() adalah seperti berikut:
$(selector).is(filter)
Antaranya, pemilih ialah pemilih elemen yang ingin kita nilai, dan penapis ialah pemilih bersyarat yang kita mahu menilai.
Berikut ialah contoh mudah:
Kod HTML:
<div class="box">我是一个div元素</div> <button>判断是否为box类</button>
Kod JavaScript:
$("button").click(function(){ var result = $(".box").is(".box"); if(result){ alert("该元素是box类"); } else{ alert("该元素不是box类"); } });
Apabila butang diklik, kotak gesaan yang sepadan akan muncul untuk memberitahu kami sama ada elemen div mempunyai kelas kotak. Dalam contoh ini, pemilih is() mengembalikan hasil Boolean dengan menentukan sama ada ia mempunyai kelas .box.
2. Pemilih Where()
Pemilih where() boleh menapis elemen berdasarkan satu atau lebih pemilih bersyarat. Ia mengembalikan objek jQuery baharu yang mengandungi elemen yang sepadan dengan semua pemilih kriteria.
Sintaks untuk menggunakan pemilih where() adalah seperti berikut:
$(selector).where(filter1, filter2, ...)
Antaranya, selector ialah pemilih elemen yang ingin kita tapis, filter1, filter2 , dsb. ialah elemen yang ingin kami tapis.
Berikut ialah contoh:
Kod HTML:
<div class="box">第一个div元素</div> <div class="box">第二个div元素</div> <div>第三个div元素</div> <button>筛选box类元素</button>
Kod JavaScript:
$("button").click(function(){ var result = $("div").where(".box"); result.css("background-color", "yellow"); });
Apabila butang diklik, warna latar belakang elemen div kelas .box akan ditetapkan kepada kuning. Melalui pemilih where(), kami menapis elemen dengan kelas .box dan mengubah suai gayanya.
3. Contoh Komprehensif
Berikut ialah contoh komprehensif, yang menggunakan pemilih is() dan where() dalam kombinasi untuk merealisasikan operasi pemilihan dan penapisan elemen tertentu:
Kod HTML:
<div class="container"> <div class="box"> <p class="text">文本1</p> <p class="text">文本2</p> </div> <div class="box"> <p class="text">文本3</p> <p class="text">文本4</p> </div> </div> <button>判断是否包含.text元素</button>
Kod JavaScript:
$("button").click(function(){ var hasTextElement = $(".container").is(":has(.text)"); if(hasTextElement){ var result = $(".container").where(".box"); result.removeClass("box"); } });
Apabila butang diklik, jika elemen bekas mengandungi elemen .text, semua elemen kelas .box akan dialih keluar daripada kelas kotak. Pemilih is() digunakan di sini untuk menentukan sama ada elemen kontena mengandungi elemen teks Jika ada, pemilih where() digunakan untuk menapis elemen kelas .box untuk pengubahsuaian.
Melalui contoh ini, kita dapat melihat kuasa pemilih is() dan where(). Mereka boleh membantu kami mencari elemen yang kami perlukan dengan tepat dan melaksanakan operasi yang sepadan antara pemilihan kompleks dan keadaan penapisan.
Kesimpulan
Artikel ini memperkenalkan cara menggunakan pemilih is() dan where(), dan menunjukkan fungsi dan kesannya melalui contoh kod. Menguasai kedua-dua pemilih ini membolehkan kami mengendalikan elemen dengan lebih fleksibel dan mencapai kesan yang kompleks dalam pembangunan bahagian hadapan. Saya harap artikel ini dapat membantu semua orang maju dalam pengaturcaraan bahagian hadapan.
Atas ialah kandungan terperinci Pengaturcaraan bahagian hadapan lanjutan: Kuasai pemilih adalah dan tempat untuk mencapai kesan yang kompleks. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!