jquery选择器中的空格与大于号>、加号+与波浪号~的区别

概念

空格:$('parent childchild')表示获取parent下的所有的childchild节点


大于号:$('parent > childchild')表示获取parent下的所有下一级childchild

加号:$('pre + nextbrother')表示获得pre节点的下一个兄弟节点,相当于next()方法

波浪号:$('pre ~ brother')表示获取pre节点的后面的所有兄弟节点,相当于nextAll()方法

 

详解描述

现有代码如下


<meta charset="utf-8">
<script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
<div id="imgs_box">
    <ul class="play_imgs_width  imgs_source">
        <li><a href="javascript:;"><img src="./images/banner1.jpg" idth="610" height="390"/></a></li>
        <li><a href="javascript:;"><img src="./images/banner1.jpg" idth="610" height="390"/></a></li>
        <li><a href="javascript:;"><img src="./images/banner1.jpg" idth="610" height="390"/></a></li>
    </ul>
    <ul class="imgs_buttons play_imgs_width">
        <li><a href="" class="buttons_ahover">1</a></li>
        <li><a href="" class="buttons_default">2</a></li>
        <li><a href="" class="buttons_default">3</a></li>
    </ul>    
    <ul class="test">
        <li>
            <ul class="test_first_child">
                <li></li>
                <li></li>
                <li></li>
                <li></li>
            </ul>
        </li>
    </ul> 
</div>

空格的使用

如果要获取imgs_box中的所有a标签,可以使用空格,代码如下

  1. //获取imgs_box下的所有元素

  2. $(function(){

  3. $('#imgs_box a').each(function(){

  4. console.log(this);

  5. });

  6. });

  7. 效果如下图,可以看到,获取了所有元素


    大于号的使用

    如果要imgs_box中下一级的所有ul元素,不包含类为test_first_child的元素,可以使用如下代码
    $(function(){
        $('#imgs_box > ul').each(function(){
            console.log(this);
        });
    });


    加号的使用

    如果想获取类为imgs_source元素的相邻的下一个元素,可以使用加号。代码如下
    $(function(){
        $('.imgs_source + ul').each(function(){
            console.log(this);
        });
    });

    波浪号的使用

    如果想获取类为imgs_source元素所有的同级元素,可以使用波浪号~。代码如下
    $(function(){
        $('.imgs_source ~ ul').each(function(){
            console.log(this);
        });
    });

  8. 版权声明:本文为CSDN博主「我爱默小兜」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/hsd2012/article/details/51750105

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值