Если я правильно понимаю, у вас может быть следующий html:
<div class="class1" id="outer1">
<div class="class2 inner">
<div class="class1 inner">
<div class="class2 inner">
</div>
</div>
</div>
</div>
<div class="class2" id="outer2">
<div class="class1 inner">
<div class="class2 inner">
<div class="class1 inner">
</div>
</div>
</div>
</div>
И вы хотите такой селектор, как:
$(".class1, .class2");
Но отфильтрованы так, что выбираются только outer1
и outer2
, а не класса inner
, верно?
Следующее выберет все элементы любого класса, а затем исключит любые элементы, являющиеся потомками любого из классов, оставив таким образом только самого высокого предка любого класса, то есть самый внешний элемент:
$(".class1, .class2").not(".class1 *, .class2 *")