jQuery   发布时间:2022-04-19  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了如何选择儿童元素,但只有一个级别深层次的jQuery大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
鉴于此
<div id="div1">
    <div id="div2">
        <div id="div200">
            <div id="div3" class="b">       
            </div>
            <div id="div300">
                <div id="div4" class="b">
                     <div id="div5"> 
                        <div id="div6" class="b">
                        </div>            
                     </div>
                </div>
            <div>
        <div>
    <div>
</div>

我需要一种方法来找到一个“b”类的元素的子(深),而不是嵌套在匹配元素中的元素.

测试用例:

这就是我需要的:

情况1:

$("#div1")@L_658_2@me_jquery_Syntax(".b")
Should return:
div3,div4

情况2:

$("#div5")@L_658_2@me_jquery_Syntax(".b")
Should return:
div6

请注意,硬盘部分是从div1开始时必须跳过div2.所以我不能只使用$(“#div1”).find(“> .b”).

我的尝试:

我试过这个:

$("#div1").find(".b")
[<div id="div3" class="b"></div>,<div id="div4" class="b"></div>,<div id="div5" class="b"></div>]

不好:我不想要div5,因为它嵌套在div4中.

我试过这个:

$("#div0").find(".b").not(".b .b")
[<div id="div3" class="b"></div>,<div id="div4" class="b"></div>]

从div0开始就可以了,但是从div4起不起作用:

$("#div5").find(".b").not(".b .b")
[]

解决方法

找到直接的大孩子:
​$("#div1").children().children(".b");

小提琴:http://jsfiddle.net/jonathansampson/Dy6GJ/

如果你不知道有多深,但是希望所有的.b不在.b文件中,那么在尊重父权限制的同时使用过滤器.您可以使用.parentsUntil方法

var parent = "#div1";
$(".b",parent).filter(function(){
    return !$(this).parentsUntil(parent,".b").length;
}).css("border","1px solid red");​​​​​​​​​​​​​​​​​

小提琴:http://jsfiddle.net/jonathansampson/Dy6GJ/3/

大佬总结

以上是大佬教程为你收集整理的如何选择儿童元素,但只有一个级别深层次的jQuery全部内容,希望文章能够帮你解决如何选择儿童元素,但只有一个级别深层次的jQuery所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。