首页 > 解决方案 > 我想选择一个没有父元素的子元素选择

问题描述


1  <div class="mnr-c xpd O9g5cc uUPGi">
2   <div>
3    <div class="mnr-c xpd O9g5cc uUPGi">someting</div>
4   </div>
5   <div>
6    <div class="mnr-c xpd O9g5cc uUPGi">someting</div>
7   </div>
8  </div>
9  <div class="mnr-c xpd O9g5cc uUPGi">someting</div>
10

我有一个像上面这样的 HTML 结构。我只想使用 CSS 选择器选择子元素,但父母和孩子有相同的类。如果我尝试使用 jquery 进行选择,例如$$(".mnr-c.xpd.O9g5cc.uUPGi").forEach(el => console.log(el))该方法显示 4 个结果,但我只想看到 3 个结果。第 1,9 和 11 行在同一层。我的目的只是取第 3 行、第 6 行和第 9 行。如何防止选择父元素。仅使用 CSS 或 jquery 就可以实现这样的事情吗?

标签: javascripthtmljquerycss

解决方案


如果您想要的只是孩子,那么您可以通过孩子选择器 >进行选择,就像这样$(".mnr-c.xpd.O9g5cc.uUPGi > .mnr-c.xpd.O9g5cc.uUPGi")

如果您希望元素的所有后代具有相同的类,则可以使用后代组合 器(空格),如下所示$(".mnr-c.xpd.O9g5cc.uUPGi .mnr-c.xpd.O9g5cc.uUPGi")


推荐阅读