Saya bekerja dengan jQuery dan mencari untuk melihat apakah ada cara mudah untuk menentukan apakah elemen memiliki kelas CSS spesifik yang terkait dengannya.
Saya memiliki id elemen, dan kelas CSS yang saya cari. Saya hanya perlu bisa, dalam pernyataan if, melakukan perbandingan berdasarkan keberadaan kelas itu pada elemen.
javascript
jquery
css
Penjual Mitchel
sumber
sumber
Jawaban:
Gunakan
hasClass
metode:atau
Argumennya adalah (jelas) string yang mewakili kelas yang Anda periksa, dan mengembalikan boolean (sehingga tidak mendukung perangkaian seperti kebanyakan metode jQuery).
Catatan: Jika Anda memberikan
className
argumen yang berisi spasi, itu akan dicocokkan secara harfiah denganclassName
string elemen koleksi . Jadi jika, misalnya, Anda memiliki elemen,maka ini akan kembali
true
:dan ini akan kembali
false
:sumber
dari FAQ
atau:
sumber
Adapun negasi, jika Anda ingin tahu jika suatu elemen tidak memiliki kelas, Anda bisa melakukan seperti kata Mark.
sumber
Tanpa jQuery:
Atau:
Ini WAY lebih cepat dari jQuery!
sumber
...&&!!((' '+e.classname+' ').indexOf(' '+c+' ')+1)
, dan bukan hanya&&!(' '+e.classname+' ').indexOf(' '+c+' ')
?indexOf
pengembalian-1
adalah kelas tidak ada. Jika saya melakukannya!!-1
, itu akan menjaditrue
. Karena saya lakukan!!-1+1
, itu akan salah. Cara yang lebih baik adalah...&&!!~(' '+e.className+' ').indexOf(' '+c+' ')
, tetapi saya tidak ingat saat itu....&&~(' '+e.className+' ').indexOf(' '+c+' ')
Demi membantu siapa pun yang mendarat di sini tetapi sebenarnya mencari cara jQuery gratis untuk melakukan ini:
sumber
Periksa halaman FAQ jQuery resmi:
Bagaimana saya menguji apakah suatu elemen memiliki kelas pertikular atau tidak
sumber
sumber
Dalam kasus saya, saya menggunakan fungsi 'is' jQuery, saya menambahkan elemen HTML dengan kelas css berbeda, saya mencari kelas tertentu di tengahnya, jadi saya menggunakan "is" alternatif yang baik untuk memeriksa kelas yang secara dinamis ditambahkan ke elemen html, yang sudah memiliki kelas css lainnya, itu adalah alternatif lain yang bagus.
contoh sederhana:
contoh lanjutan:
sumber