给定以下假设标记:
@H_502_6@<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’),但这阻止了我第二次选择嵌套实例函数调用.
所以…我想我要寻找的是“找到这个后代的第一个”等级”.
我可能可以使用一些循环逻辑来做到这一点,但想知道是否有一个选择器和/或一些选择器组合可以实现该逻辑.
更新:
我最终得到的是:
@H_502_6@$('.monkey') .children('.cow') ...do something... .end() .children('li') .children('.cow') ...do something... .end() .end()
似乎冗长/ hacky,但似乎可以工作.
最佳答案