Jquery 不隐藏每个类父级的第一个子级
下面是我的html和jQuery代码Jquery 不隐藏每个类父级的第一个子级,jquery,html,css,Jquery,Html,Css,下面是我的html和jQuery代码 <div class="tabbed"> <h2>Title</h2> <div class="tabs"></div> <!-- want to show then hide rest --> <h2>Title</h2> <div class="tabs"></div> <h2>Tit
<div class="tabbed">
<h2>Title</h2>
<div class="tabs"></div> <!-- want to show then hide rest -->
<h2>Title</h2>
<div class="tabs"></div>
<h2>Title</h2>
<div class="tabs"></div>
</div>
<div class="tabbed">
<h2>Title</h2>
<div class="tabs"></div> <!-- want to show then hide rest -->
<h2>Title</h2>
<div class="tabs"></div>
<h2>Title</h2>
<div class="tabs"></div>
<h2>Title</h2>
<div class="tabs"></div>
</div>
<div class="tabbed">
<h2>Title</h2>
<div class="tabs"></div> <!-- want to show then hide rest -->
<h2>Title</h2>
<div class="tabs"></div>
<h2>Title</h2>
<div class="tabs"></div>
<h2>Title</h2>
<div class="tabs"></div>
</div>
更新答案以匹配您的新问题代码:
$(".tabbed").find('.tabs:not(:first)').hide();
上面的内容看起来可能不“正确”,因为人们会假设
:first
只返回1个元素,但它的效果与这个更详细、更消耗CPU的表单相同:
$(".tabbed").each(function() {
$(this).find('.tabs:not(:first)').hide();
});
我假设该方法在为匹配元素集中的每个元素执行选择器之前在内部进行迭代,因此后面的代码片段是不必要的。但是,如果将来升级或降级jQuery时遇到问题,您可以使用更详细、更防弹的表单。您在这里真正要问的问题是什么?感谢您的编辑-现在更清楚了。Hi@Chris添加了更多信息以使问题更清楚
$(".tabbed").each(function() {
$(this).find('.tabs:not(:first)').hide();
});