Jquery将类设置为除具有特定类+子项/子项的子元素的元素之外的所有元素

时间:2015-07-06 14:41:49

标签: javascript jquery css jquery-selectors

我想要隐藏除了具有特定类的元素以及其中所有元素之外的所有元素。

现在我正在使用

$("body").not(".embedded").hide();

但它也隐藏了我的.embedded元素中的元素。

我感谢你的每一次帮助。

2 个答案:

答案 0 :(得分:2)

使用*space表示所有直接/嵌套子项。此外,对于初始选择器,在body *过滤之前使用not()表示所有子项

$("body *").not(".embedded, .embedded *").hide();

答案 1 :(得分:1)

你在这里:

$('body :not(".class2")').hide();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<span class="class1">11111</span>
<span class="class2">
    10
    <span class="class21">11</span>
    <span>12</span></span>
<span class="class1">11111</span>

希望这有帮助。