jQuery:jQuery选择器

1 基本选择器

  基本选择器包括:

    标签选择器

    类选择器

    ID选择器

    并集选择器

    交集选择器

    全局选择器

 

名称 语法构成 描述 示例
标签选择器 element 根据给定的标签名 匹配元素 $("h2" ) 选取所有h2元素
类选择器 .class 根据给定的class 匹配元素 $(" .title")选取所有class为title的元素
ID选择器 #id 根据给定的id 匹配元素 $(" #title")选取id为title的元素
并集选择 器 selector1,selector2,...,selectorN 将每一个选择器匹配的元素合并后 一起返回 $("div,p,.title" )选取所有 div、p和拥有class为title 的元素
交集 选择 器 element.class或element#id 匹配指定class或id 的某元素或元素集合 $("h2.title")选取所有拥有 class为title的h2元素
<p>中国</p>
<p>武汉</p>
<p class="jy">加油</p>
<p id="wan">祖国万岁</p>
<h3 class="jy">祖国万岁</h3>

<script src="js/jquery-3.4.1.min.js"></script>
<script>
    //$("p").css("color","red"); // 标签选择器,获得所有的p
    //$(".jy").css("color","red"); //类选择器
    //$("#wan").css("color","red"); //ID选择器,更具备唯一性
    //$(".jy,#wan").css("color","red"); // 并集选择器,.jy和#wan
    $("h3.jy").css("color","red"); // 交集选择器,既是h3标签,又拥有.jy的元素
</script>

 

2 层次选择器

名称 语法构成 描述 示例
后代选择器 ancestor descendant 选取ancestor元素里的所有 descendant(后代)元素 $("#menu span" )选取 #menu下的元素
子选择器 parent>child 选取parent元素下的child(子) 元素 $(" #menu>span" )选取 #menu的子元素
相邻元 素选择 器 prev+next 选取紧邻prev元素之后的next元素

$(" h2+dl " )选取紧邻

元素之后的同辈元素

同辈元 素选择 器 prev~sibings 选取prev元素之后的所有siblings 元素

$(" h2~dl " )选取

元素之后所有 的同辈元素

<h3>000</h3>
<div id="x">
    111
    <p>p1</p>
    <div>
        <p>p2</p>
    </div>
</div>
<h3>222</h3>
<h3>333</h3>

<script src="js/jquery-3.4.1.min.js"></script>
<script>
    //$("#x p").css("color","red"); // 后代选择器,忽略层级
    //$("#x>p").css("color","red"); // 子代选择器,只负责子级
    //$("#x+h3").css("color","red"); // 相邻元素选择器,下一个紧邻的兄弟h3
    $("#x~h3").css("color","red"); // 同辈元素选择器,下面的所有兄弟h3
</script>

 

3 属性选择器

名称 语法构成 描述 示例
属性选择器 [attribute] 选取包含给定属性的元素 $(" [href]" )选取含有href属性的元 素
  [attribute=value] 选取等于给定属性是某 个特定值的元素 $(" [href ='#']" )选取href属性值为 “#”的元素
  [attribute !=value] 选取不等于给定属性是 某个特定值的元素 $(" [href !='#']" )选取href属性值不 为“#”的元素
  [attribute^=value] 选取给定属性是以某些 特定值开始的元素 $(" [href^='en']" )选取href属性值以 en开头的元素
  [attribute$=value] 选取给定属性是以某些 特定值结尾的元素 $(" [href$='.jpg']" )选取href属性值 以.jpg结尾的元素
  [attribute*=value] 选取给定属性是以包含 某些值的元素 $(" [href* ='txt']" )选取href属性值 中含有txt的元素
  [s1] [s2] [sN] 选取满足多个条件的复 合属性的元素 $("li[id][title=新闻]" )选取含有id和 title属性为新闻的<li>元素 
<a href="www.lagou.com">拉勾网</a>
<a href="www.sina.com.cn">新浪网</a>
<a href="http://www.163.com">网易</a>
<p href="x">哈哈1</p>
<p href="x" title="x">哈哈2</p>

<script src="js/jquery-3.4.1.min.js"></script>
<script>
    //$("[href]").css("color","red"); // 选取拥有href属性的元素
    //$("[href='x']").css("color","red"); // 选取拥有href=x的元素
    //$("a[href!='x']").css("color","red"); // 选取a标签中href不等于x的元素
    //$("[href^='www']").css("color","red"); // 选取href属性以www开头的元素
    //$("[href$='com']").css("color","red"); // 选取href属性以com结尾的元素
    //$("[href*='a']").css("color","red"); // 选取href属性包含a的元素
    $("p[href][title='x']").css("color","red"); // 选取拥有href属性和title属性,并且title=x的p元素
</script>

 

4 过滤选择器

语法构成 描述 示例
:first 选取第一个元素

$(" li:first" )选取所有

  元素中的第一个

  元素

:last 选取最后一个元素

$(" li:last" )选取所有

  元素中的最后一个

  元素

:even 选取索引是偶数的所有元素(index从0开始) $(" li:even" )选取索引是偶数的所有元素
:odd 选取索引是奇数的所有元素(index从0开始) $(" li:odd" )选取索引是奇数的所 有元素
:eq(index) 选取索引等于index的元素(index从0开始) $("li:eq(1)" )选取索引等于1的元素
:gt(index) 选取索引大于index的元素(index从0开始) $(" li:gt(1)" )选取索引大于1的元素(注:大于1,不包括1)
:lt(index) 选取索引小于index的元素(index从0开始) $(“li:lt(1)” )选取索引小于1的元素(注:小于1,不包括1)
<h2 id="h2#x">修仙小说</h2>
<ul>
    <li>凡人修仙传</li>
    <li>遮天</li>
    <li>神墓</li>
    <li>残袍</li>
    <li>大主宰</li>
</ul>
<script src="js/jquery-3.4.1.min.js"></script>
<script>

    //$("li:first").css("color","red"); // 第一个li
    //$("li:last").css("color","red"); // 最后一个li
    //$("li:even").css("color","red"); // 偶数行的li
    //$("li:odd").css("color","red"); // 奇数行的li
    //$("li:eq(2)").css("color","red"); // 下标为2的li
    //$("li:gt(1)").css("color","red"); // 下标大于1的li
    //$("li:lt(2)").css("color","red"); // 下标小于2的li
    $("#h2\\#x").css("color","red"); // 使用转义符
</script>

 

posted @ 2021-08-28 16:02  Jasper2003  阅读(88)  评论(0编辑  收藏  举报