• siblings() 方法


    siblings([selected])   

       简介:

          给定一个表示一组DOM元素的jQuery对象,该.siblings()方法允许我们在DOM树中搜索这些元素的兄弟节点,并从匹配的元素构造一个新的jQuery对象。

         该方法可选地接受与我们可以传递给$()函数的相同类型的选择器表达式如果提供了选择器,元素将通过测试是否匹配。

         考虑一个有简单列表的页面: 

    <ul>
      <li>list item 1</li>
      <li>list item 2</li>
      <li class="third-item">list item 3</li>
      <li>list item 4</li>
      <li>list item 5</li>
    </ul>

          执行下面一段代码:

    $( "li.third-item" ).siblings().css( "background-color", "red" );

          此时浏览器会把除了三号之外其余所有标签背景色都设置成红色,而sivlings()相当于筛选器 ,在获取的这些数组元素中在做一次条件筛选,并返回满足条件的JQuery对象,这里注意是JQuery对象,如果选择器中并未设置任何筛选条件那么他将会返回所有同级元素,为了方便理解下面插入一段另外一位大神的demo:  

    <p id="n1">
        <span id="n2">
            <span id="n3">A</span>
        </span>
        <label id="n4">B</label>
        <span id="n5">
            <span id="n6">C</span>
        </span>
        <strong id="n7" class="active">D</strong>
        <span id="n8" class="active">E</span>
    </p>
    <p id="n9">
        <span id="n10"></span>
        <label id="n11"></label>
        <span id="n12" class="active"></span>
    </p>

          JS部分如下:

    //返回jQuery对象所有匹配元素的标识信息数组
    //每个元素形如:#id
    function getTagsInfo($doms){
        return $doms.map(function(){
            return "#" + this.id;
        }).get();
    }
    
    var $n4 = $("#n4");
    
    //匹配n4的所有同辈元素(同辈元素不会包括n4自己,下同)
    var $elements = $n4.siblings( );
    document.writeln( getTagsInfo( $elements ) ); // #n2,#n5,#n7,#n8
    
    //匹配n4所有的同辈span元素
    var $matches = $n4.siblings("span");
    document.writeln( getTagsInfo( $matches ) ); // #n2,#n5,#n8
    
    var $label = $("label");
    //匹配所有label元素的含有类名"active"的同辈元素
    var $actives = $label.siblings(".active");
    document.writeln( getTagsInfo( $actives ) ); // #n7,#n8,#n12
  • 相关阅读:
    防止软件被暴力破解
    简单分析QQ群验证
    Hash(哈希)算法科普
    C语言自学的方法
    如何防范算法求逆
    .Net程序逆向入门教程
    分享几篇VMP研究和分析的文章
    逆向工程
    PHP之MVC项目实战(三)
    PHP之MVC项目实战(二)
  • 原文地址:https://www.cnblogs.com/workstation-liunianguowang/p/6909627.html
Copyright © 2020-2023  润新知