zoukankan      html  css  js  c++  java
  • jQuery之元素筛选

    过滤

    说明:

      jQuery对象中的元素对象数组中过滤出一部分元素来,并封装成新的jQuery对象返回。

    方法:

      first()

      last()

      eq(index|-index)

      filter(selector):对当前元素提要求

      not(selector):对当前元素提要求并取反

      has(selector):对子孙元素提要求

    示例:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>筛选_过滤</title>
    </head>
    <body>
    
    <ul>
        <li>AAAAA</li>
        <li title="hello" class="box2">BBBBB</li>
        <li class="box">CCCCC</li>
        <li title="hello">DDDDDD</li>
        <li title="two"><span>BBBBB</span></li>
    </ul>
    <li>eeeee</li>
    <li>EEEEE</li>
    <br>
    
    <script type="text/javascript" src="../js/jquery.min.js"></script>
    <script type="text/javascript">
        /*
         * 需求:
         * 1.ul下li标签第一个
         * 2.ul下li标签的最后一个
         * 3.ul下li标签的第二个
         * 4.ul下li标签中title属性为hello的
         * 5.ul下li标签中title属性不为hello的
         * 6.ul下li标签中有span子标签的
         */
        $(function (){
            var $lis = $('ul>li');
            //1.ul下li标签第一个
            $lis.first().css('background', 'red');
            //2.ul下li标签的最后一个
            $lis.last().css('background', 'red');
            //3.ul下li标签的第二个
            $lis.eq(1).css('background', 'red');
            //4.ul下li标签中title属性为hello的
            $lis.filter('[title=hello]').css('background', 'red');
            //5.ul下li标签中title属性不为hello的
            $lis.not('[title=hello]').css('background', 'red');
            $lis.filter('[title][title!=hello]').css('background', 'red');
            //6.ul下li标签中有span子标签的
            $lis.has('span').css('background', 'red');
        });
    </script>
    </body>
    </html>

    查找

    说明:

      在已经匹配出的元素集合中根据选择器查找孩子/父母/兄弟标签,并封装成新的jQuery对象返回。

    方法:

      children():子元素

      find():后代元素

      parent():父元素

      prevall():前的所有兄弟

      nextall():后的所有兄弟

      siblings():所有兄弟

    示例:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>筛选_查找孩子-父母-兄弟标签</title>
    </head>
    <body>
    
    <div id="div1" class="box" title="one">class为box的div1</div>
    <div id="div2" class="box">class为box的div2</div>
    <div id="div3">div3</div>
    <span class="box">class为box的span</span>
    <br/>
    <div>
        <ul>
            <span>span文本1</span>
            <li>AAAAA</li>
            <li title="hello" class="box2">BBBBB</li>
            <li class="box" id='cc'>CCCCC</li>
            <li title="hello">DDDDDD</li>
            <li title="two"><span>span文本2</span></li>
            <span>span文本3</span>
        </ul>
        <span>span文本444</span><br>
        <li>eeeee</li>
        <li>EEEEE</li>
        <br>
    </div>
    
    <script type="text/javascript" src="../js/jquery.min.js"></script>
    <script type="text/javascript">
        /*
         * 需求:
         * 1.ul标签的第2个span子标签
         * 2.ul标签的第2个span后代标签
         * 3.ul标签的父标签
         * 4.id为cc的li标签的前面的所有li标签
         * 5.id为cc的li标签的所有兄弟li标签
         */
        $(function (){
            var $ul = $('ul');
            //1.ul标签的第2个span子标签
            $ul.children('span:eq(1)').css('background', 'red');
            //2.ul标签的第2个span后代标签
            $ul.find('span:eq(1)').css('background', 'red');
            //3.ul标签的父标签
            $ul.parent().css('background', 'red');
            //4.id为cc的li标签的前面的所有li标签
            $ul.children('#cc').prevAll('li').css('background', 'red');
            //5.id为cc的li标签的所有兄弟li标签
            $ul.children('#cc').siblings('li').css('background', 'red');
        });
    </script>
    </body>
    </html>
  • 相关阅读:
    日♂常
    日♂常
    生哥的hu测
    生哥的hu测
    118.编程实现添加环境变量
    4.泡妞与设计模式(五) 原型模式
    4.泡妞与设计模式(四)享元模式
    2.泡妞与设计模式(三) 外观模式
    1.泡妞与设计模式(二)合成模式
    0.泡妞与设计模式(一)工厂模式
  • 原文地址:https://www.cnblogs.com/hfl1996/p/13274565.html
Copyright © 2011-2022 走看看