分类解析jQuery选择器

2020-05-27 17:55:25易采站长站整理

  (3)、class  根据class属性匹配元素


    $(".important").removeClass();    //匹配所有class="important"元素
    <p class="important">我是一个p元素</p>

  (4)、*      匹配所有的元素

    

$("*").css("background-color","red");

  (5)、selector1,selector2  选择器之间用逗号分隔  返回每一个选择器匹配到的元素

    

$(".div1,#span1").css("background-color","red");

2、层次选择器

 (1)、ancestor descendant   根据祖先元素匹配所有的后代元素,返回的是匹配到的后代元素,用空格分开。


$("#div1 span").css("color","red");

    <div id="div1">
      <span>我是span1</span>     ***会被选中,是#div1的后代span
      <div>
        <span>我是span3</span>   ***会被选中,也是#div1的后代span
      </div>
    </div>
    <span>我是span2</span>       ***不会被选中,不是#div1的后代

     (2)、parent > child  根据父元素匹配所有的子元素  返回所有的子元素  用大于号”>”分隔


$("#div1 > span").css("color","red");
    <div id="div1">
      <span>我是span1</span>     ***会被选中,是#div1的子元素span
      <div>
        <span>我是span3</span>   ***不会被选中,是#div1的后代元素,但不是直接子元素
      </div>
    </div>
    <span>我是span2</span>       ***不会被选中,不是#div1的子元素

    (3)、prev + next  匹配紧接在prev元素后的相邻的下一个元素   用加号”+”分隔。

    相当于.next()方法


$(".p1 + p").css("color","red");    //此行代码相当于$(".p1").next().css("color","red");
    <div>
      <p>我是第一个P</p>      ***不会被选中,是class为p1的上一个了
      <p class="p1">我是第二个P</p>  ***prev本身并不会被选中
      <p>我是第三个P</p>      ***会被选中,是class为p1的下一个相邻元素
      <p>我是第四个P</p>      ***不会被选中,不是class为p1的下一个,是下二个了