Javascript 选择多个父元素的第一个子元素,并将同一类应用于所有父元素
我正在寻找一种方法来选择多个父div的第一个子元素,其中的父div具有相同的类。这是我的HTML:Javascript 选择多个父元素的第一个子元素,并将同一类应用于所有父元素,javascript,jquery,html,Javascript,Jquery,Html,我正在寻找一种方法来选择多个父div的第一个子元素,其中的父div具有相同的类。这是我的HTML: <div class="wrapper"> <p>Select this paragraph</p> </div> <div class="wrapper"> <img src="https://picsum.photos/200/300" title="Select this image"> <p>
<div class="wrapper">
<p>Select this paragraph</p>
</div>
<div class="wrapper">
<img src="https://picsum.photos/200/300" title="Select this image">
<p>Don't select this</p>
</div>
<div class="wrapper">
<p>Select this paragraph</p>
<p>Don't select this paragraph</p>
</div>
问题是它只选择第一个父div的子元素,而不选择第三个包装的
img
和第一个p
。我想你需要某种数组来实现这一点,并将一个类应用到所有的数组中,但是我如何才能实现这一点(最好是使用jQuery)?你很接近了,你需要的是遍历包含.wrapper
类的元素,并将noMargin
类附加到它们的第一个子元素,即
$('.wrapper').each(function() {
$(this).children(":first").addClass("noMargin");
});
很接近了,您需要的是遍历具有
.wrapper
类的元素,并将noMargin
类附加到它们的第一个子元素,即
$('.wrapper').each(function() {
$(this).children(":first").addClass("noMargin");
});
您可以使用以下示例,它工作正常
$('.wrapper :nth-child(1)').addClass("noMargin");
或者其他语法
$('.wrapper :first-child').addClass('noMargin');
您可以使用以下示例,它工作正常
$('.wrapper :nth-child(1)').addClass("noMargin");
或者其他语法
$('.wrapper :first-child').addClass('noMargin');
很乐意帮忙!:)这可以工作,但无需使用
每个。查看另一个答案,或者只查看$('.wrapper:first child').addClass('noMargin')代码>很乐意帮忙!:)这可以工作,但无需使用每个。查看另一个答案,或者只查看$('.wrapper:first child').addClass('noMargin')代码>可选语法:$('.wrapper:first child').addClass('noMargin')
感谢@Jeto提供您的备选答案我可以将其添加到我的答案中吗?备选语法:$('.wrapper:first child').addClass('noMargin')代码>感谢@Jeto提供您的备选答案我可以将其添加到我的答案中吗?