Выбор нескольких классов с помощью jQuery
-
20-08-2019 - |
Вопрос
Я хорошо просмотрел и, похоже, не могу понять, как выбрать все элементы, соответствующие определенным классам, в одном операторе jQuery selector, таком как этот:
$('.myClass', '.myOtherClass').removeClass('theclass');
Есть какие-нибудь идеи о том, как этого добиться?Единственный другой вариант - это сделать
$('.myClass').removeClass('theclass');
$('.myOtherClass').removeClass('theclass');
Но я делаю это с довольно большим количеством классов, поэтому для этого требуется много кода.
Решение
Это должно сработать:
$('.myClass, .myOtherClass').removeClass('theclass');
Вы должны добавить все несколько селекторов в первом аргументе в $() , в противном случае вы предоставляете jQuery контекст для поиска, а это не то, что вы хотите.
Это то же самое, что вы сделали бы в CSS.
Другие советы
Вы пробовали это?
$('.myClass, .myOtherClass').removeClass('theclass');
Я использую $('.myClass.myOtherClass').removeClass('theclass');
// Due to this Code ): Syntax problem.
$('.myClass', '.myOtherClass').removeClass('theclass');
Согласно документации jQuery:https://api.jquery.com/multiple-selector/
Когда можно выбрать несколько классов таким образом:
jQuery(“selector1, selector2, selectorN”) // double Commas. // IS valid.
jQuery('selector1, selector2, selectorN') // single Commas. // Is valid.
заключив все селекторы в одну "..." ' или двойные запятые, "..."
Итак, в вашем случае правильным способом вызова нескольких классов является:
$('.myClass', '.myOtherClass').removeClass('theclass'); // your Code // Invalid.
$('.myClass , .myOtherClass').removeClass('theclass'); // Correct Code // Is valid.