Apakah ada cara di jQuery untuk memeriksa apakah ada orang tua, grand-parent, great-grand-parent memiliki kelas.
Saya memiliki struktur markup yang membuat saya melakukan hal ini dalam kode:
$(elem).parent().parent().parent().parent().hasClass('left')
Namun, untuk keterbacaan kode saya ingin menghindari hal semacam ini. Apakah ada cara untuk mengatakan "ada orang tua / kakek nenek / buyut orang tua yang memiliki kelas ini"?
Saya menggunakan jQuery 1.7.2.
javascript
jquery
html
jquery-selectors
jquery-1.7
Crmpicco
sumber
sumber
Jawaban:
sumber
.length
sebagai nilai kebenaran cukup produktif di JS, itu jauh lebih jelas dan lebih mudah dipahami.length > 0
Ada banyak cara untuk memfilter unsur leluhur.
Hati-hati ,
closest()
metode menyertakan elemen itu sendiri saat memeriksa pemilih.Atau, jika Anda memiliki pemilih unik yang cocok dengan
$elem
, misalnya#myElem
, Anda dapat menggunakan:Jika Anda ingin mencocokkan elemen yang tergantung pada salah satu kelas leluhurnya untuk tujuan penataan saja, cukup gunakan aturan CSS :
sumber
Is there any way in jQuery to check if any parent,...
,closest()
cek untuk elemen itu sendiri jadi ini tidak benar-benar menjawab pertanyaan, OP bisa berharap untuk explecitely mengecualikan elemen itu sendiri, sehingga ya, jawabannya adalah menggunakan.parents()
Anda dapat menggunakan
parents
metode dengan.class
pemilih yang ditentukan dan memeriksa apakah ada yang cocok dengan itu:sumber