Як в jQuery вибрати елемент з декількома класами?
Я хочу вибрати всі елементи, які мають два класи a
і b
.
<element class="a b">
Отже, тільки ті елементи, які мають обидва класи.
Коли я використовую $(".a, .b")
він дає мені об'єднання, а мені потрібен перетин.
1976
3
Якщо ви хочете зіставити тільки елементи з обома класами (перетин, як логічне І), просто напишіть селектори разом без пробілів між ними:
Порядок не має значення, тому ви також можете поміняти класи місцями:
Таким чином, щоб зіставити елемент
div
, що має ідентифікаторa
з класамиb
іc
, ви б написали:(На практиці, скоріш за все, вам не потрібно отримувати таку специфіку, і зазвичай достатньо самого ідентифікатора або селектора класу:
$('#a')
).Зробити це можна за допомогою функції
filter()
:Згадаймо ще один випадок зі стихією:
Наприклад,
<div id="title1" class="A B C">
Просто наберіть: `$("div#title1.A.B.C")``.