jQuery:选择具有 class X 的所有元素,但也具有 class Y 的元素除外
jQuery: selecting all elements having class X except those also having class Y
是否有可能在 jQuery 到 select 中所有具有 class X 的元素除了那些也具有 class Y 的元素?这是我的代码:
jQuery( '.class_A, .class_B' ).mCustomScrollbar();
我想做这样的事情:
jQuery( '.class_A, .class_B[except_if_also_has_class_C' ).mCustomScrollbar();
是这样的吗?
$('.class_X:not(.class_Y)')
这将 select 所有具有 class A 的元素,而不是那些同时具有 A 和 B
的元素
$('.a:not(.b)').css({'color': 'red'});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li class="a">a</li>
<li class="a">a</li>
<li class="a">a</li>
<li class="a b">ab</li>
<li class="b">b</li>
<li class="b">b</li>
<li class="a b">a</li>
<li class="b">b</li>
</ul>
你能使用 jquery .not()
功能吗:
你可以这样做:
$('.class_B').not('.class_C');
希望这对您有所帮助
是的,你可以这样做
jQuery('[class="class_A class_B"]');
这只会让您获得 class A 和 class B。
是否有可能在 jQuery 到 select 中所有具有 class X 的元素除了那些也具有 class Y 的元素?这是我的代码:
jQuery( '.class_A, .class_B' ).mCustomScrollbar();
我想做这样的事情:
jQuery( '.class_A, .class_B[except_if_also_has_class_C' ).mCustomScrollbar();
是这样的吗?
$('.class_X:not(.class_Y)')
这将 select 所有具有 class A 的元素,而不是那些同时具有 A 和 B
的元素$('.a:not(.b)').css({'color': 'red'});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
<li class="a">a</li>
<li class="a">a</li>
<li class="a">a</li>
<li class="a b">ab</li>
<li class="b">b</li>
<li class="b">b</li>
<li class="a b">a</li>
<li class="b">b</li>
</ul>
你能使用 jquery .not()
功能吗:
你可以这样做:
$('.class_B').not('.class_C');
希望这对您有所帮助
是的,你可以这样做
jQuery('[class="class_A class_B"]');
这只会让您获得 class A 和 class B。