gpt4 book ai didi

jquery - 通过 jQuery 选择类的第一个实例,但不选择嵌套实例

转载 作者:行者123 更新时间:2023-12-01 01:20:25 24 4
gpt4 key购买 nike

鉴于以下假设标记:

<ul class="monkey">
<li>
<p class="horse"></p>
<p class="cow"></p>
</li>
</ul>

<dl class="monkey">
<dt class="horse"></dt>
<dd class="cow">
<dl>
<dt></dt>
<dd></dd>
</dl>
<dl class="monkey">
<dt class="horse"></dt>
<dd class="cow"></dd>
</dl>
</dd>
</dl>

我希望能够在每个猴子类别中获得马和牛类别的“第一级”。但我不想要嵌套的马和牛类。

我从 .children 开始,但这不适用于 UL 示例,因为它们不是 .monkey 的直接子代。

我可以使用 find: $('.monkey').find('.horse, .cow') 但这会返回所有实例,包括嵌套实例。

我可以过滤查找: $('.monkey').find('.horse, .cow').not('.cow .horse, .cow .cow') 但这阻止我选择嵌套实例在第二次函数调用时。

所以...我想我正在寻找的是“找到这个后代的第一个“级别””。我可能可以使用一些循环逻辑来做到这一点,但想知道是否有一个选择器和/或一些选择器组合可以实现该逻辑。

更新:

这就是我最终得到的结果:

$('.monkey')
.children('.cow')
...do something...
.end()
.children('li')
.children('.cow')
...do something...
.end()
.end()

看起来很冗长/老套,但似乎有效。

最佳答案

使用子元素,因为它为您提供直接子元素。

$(".monkey").children(".horse, .cow, li > .horse, li > .cow")

已编辑

$(".monkey, .monkey > li").children(".horse, .cow")

关于jquery - 通过 jQuery 选择类的第一个实例,但不选择嵌套实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2782165/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com