Jquery 隐藏包含图像的任何第一个元素

Jquery 隐藏包含图像的任何第一个元素,jquery,html,image,hide,Jquery,Html,Image,Hide,由于post body包含从link到div的大量元素,因此我只想隐藏包含image的“第一”子元素 <div class="post-body"> <div class="separator"><img/></div> </div> 只有一个.post body,我不想隐藏.post body,而是.post body中包含img的第一个元素,我想这就是您想要的(按钮用于显示前后): 函数myFunction() { $(

由于
post body
包含从link到div的大量元素,因此我只想隐藏包含image的“第一”子元素

<div class="post-body">
  <div class="separator"><img/></div>
</div>


只有一个
.post body
,我不想隐藏
.post body
,而是
.post body
中包含
img
的第一个元素,我想这就是您想要的(按钮用于显示前后):

函数myFunction()
{
$('.post body img:first').parent().hide();
}

柱体内第一节
柱体内第二组
柱体内第三分区
柱体内第四分区

如果有许多匹配元素,jQuery将返回这些元素的数组作为选择器的结果。因此,您应该能够通过数组的索引选择第一个元素,并隐藏其父元素
。post body

$($(".post-body img")[0]).parent(".post-body").hide()
使用
:has()
选择器选择
.post body
中包含图像的所有子项,然后使用
:first
选择器选择列表中的第一个:

函数隐藏(){
$('.post-body:has(img):first').hide();
}

没有图像
第一图像
第二图像


我不想隐藏
.post body
,但是
中包含图像的第一个元素。post body
@Biyan这会隐藏包含图像的第一个父容器。我更新了我的答案以显示它是如何工作的。请注意,现在在
.post body div
中的另一个
div
中有
4个div
。只有第一个映像的父映像被删除,其他映像保留。运行上面的代码段。如果这是你的要求,请告诉我。