学习 JQuery 的第二天(选择器篇)

简介: 学习 JQuery 的第二天(选择器篇)

提问:

JQuery 有几种选择器?

答:基本选择器、层级选择器、过滤选择器。(过滤选择器可再分为:基本过滤选择器、内容过滤选择器、属性过滤选择器、表单过滤选择器、表单对象属性过滤选择器)


第一节 基本选择器


基本选择器有:

#ID 选择器:(根据 id 查找标签对象 )、.class 选择器:(根据 class 查找标签对象)、 element 选择器:(根据标签名查找标签对象)、 * 选择器:(表示任意的,所有的元素 )、selector1,selector2 组合选择器:(合并选择器 1,选择器 2 的结果并返回)


ID 选择器(可以选择id名为啥啥啥的对象)


jquery代码


$(function () {
            $('#btn1').click(function () {
                $("#one").css("background-color","#ff5");
            })
        })



css代码


<style type="text/css">
        div, span, p {
            width: 140px;
            height: 140px;
            margin: 5px;
            background: #aaa;
            border: #000 1px solid;
            float: left;
            font-size: 17px;
        }
    </style>



html代码

<div id="one">我是id为one的div</div>
    <div id="two">我是id为two的div</div>
    <div class="class-one">我是class为class one的div</div>
    <div class="class-two">我是class为class two的div</div>
    <div class="class-one">我是class为class one的div</div>
    <div class="class-two">我是class为class two的div</div>
    <span>我是span</span>
    <input type="button" value="选择 id 为 one 的元素" id="btn1" />
    <input type="button" value="选择 class 为 class-one 的所有元素" id="btn2" />
    <input type="button" value="选择 元素名是 div 的所有元素" id="btn3" />
    <input type="button" value="选择 所有的元素" id="btn4" />
    <input type="button" value="选择 span 元素" id="btn5" />



image.png


这里我们点击了,选择id为one的元素,得出效果。同样的道理,我们选择类选择器、组合选择器等等,都会选择div相对的属性效果。效果图就不一一显示了,直接看代码。


选择 class 为 class-one 的所有元素


$(function () {
            $('#btn2').click(function () {
                $(".class-one").css("background-color","#ff5");
            })
        })



选择 元素名是 div 的所有元素


$(function () {
            $('#btn3').click(function () {
                $("div").css("background-color","#ff5");
            })
        })



选择 所有的元素


$(function () {
            $('#btn4').click(function () {
                $("*").css("background-color","#ff5");
            })
        })


选择 span 元素


$(function () {
            $('#btn5').click(function () {
                $("span").css("background-color","#ff5");
            })
        })


如果我们要选div里面的div呢?我们需要$的时候加上他相对应的属性就可以了。eg:


image.png



<div class="class-two">我是class为class two的div
        <div class="mini">我在里面</div>
    </div>
        $(function () {
            $('#btn6').click(function () {
                $('.mini').css("background-color","#ff5");
            })
        })





第二节 层级选择器




ancestor descendant 后代选择器 :(在给定的祖先元素下匹配所有的后代元素)

eg:body mini   意思是选择了 body 里面的所有叫 min i的元素。


parent > child 子元素选择器:(在给定的父元素下匹配所有的子元素)

eg:div > btn    意思是选择了 div 里面的叫 btn 的元素。


prev + next 相邻元素选择器:(匹配所有紧接在 prev 元素后的 next 元素 )

eg:div + span    意思是选择了 div 后面的叫 span 的元素。


prev ~ sibings 之后的兄弟元素选择器:(匹配 prev 元素之后的所有 siblings 元素)

eg:div ~> btn    意思是选择了 div 之后所有的的叫 btn 的元素。



直接看代码


html里面


<div class="one" id="one">
    id 为 one,class 为 one 的div
    <div class="mini">class为mini</div>
</div>
<div class="one" id="two" title="test">
    id为two,class为one,title为test的div
    <div class="mini" title="other">class为mini,title为other</div>
    <div class="mini" title="test">class为mini,title为test</div>
</div>
<div class="one">
    <div class="mini">class为mini</div>
</div>
<div style="display:none;" class="none">style的display为"none"的div</div>
<div class="hide">class为"hide"的div</div>
<div>
    包含input的type为"hidden"的div<input type="hidden" size="8">
</div>
<span id="span">span元素</span>
<input type="button" value="选择 body 内的所有 div 元素" id="btn1" />
<input type="button" value="在 body 内, 选择div子元素" id="btn2" />
<input type="button" value="选择 id 为 one 的下一个 div 元素" id="btn3" />
<input type="button" value="选择 id 为 two 的元素后面的所有 div 兄弟元素" id="btn4" />


css和上面的差不多就不在写了



ancestor descendant 后代选择器 :(在给定的祖先元素下匹配所有的后代元素)



$("#btn1").click(function () {
                        $("body div").css("background-color","#ffa")
                    })



image.png



parent > child 子元素选择器:(在给定的父元素下匹配所有的子元素)



$("#btn2").click(function () {
                        $("body > div").css("background-color","#ffa")
                    })



image.png



prev + next 相邻元素选择器:(匹配所有紧接在 prev 元素后的 next 元素 )



$("#btn3").click(function () {
                        $("#one+div").css("background-color","#ffa")
                    })



image.png



prev ~ sibings 之后的兄弟元素选择器:(匹配 prev 元素之后的所有 siblings 元素)



$("#btn4").click(function () {
                        $("#two~div").css("background-color","#ffa")
                    })



image.pngimage.png

image.png




第三节 过滤选择器



3.1  基本过滤器


:first 获取第一个元素

:last 获取最后个元素

:not(selector) 去除所有与给定选择器匹配的元素

:even 匹配所有索引值为偶数的元素,从 0 开始计数

:odd 匹配所有索引值为奇数的元素,从 0 开始计数

:eq(index) 匹配一个给定索引值的元素

:gt(index) 匹配所有大于给定索引值的元素

:lt(index) 匹配所有小于给定索引值的元素

:header 匹配如 h1, h2, h3 之类的标题元素

:animated 匹配所有正在执行动画效果的元素


3.2  内容过滤器


:contains(text) 匹配包含给定文本的元素

:empty 匹配所有不包含子元素或者文本的空元素

:parent 匹配含有子元素或者文本的元素

:has(selector) 匹配含有选择器所匹配的元素的元素


3.3  属性过滤器


[attribute] 匹配包含给定属性的元素。

[attribute=value] 匹配给定的属性是某个特定值的元素

[attribute!=value] 匹配所有不含有指定的属性,或者属性不等于特定值的元素。 [attribute^=value] 匹配给定的属性是以某些值开始的元素

[attribute$=value] 匹配给定的属性是以某些值结尾的元素 [attribute*=value] 匹配给定的属性是以包含某些值的元素

[attrSel1][attrSel2][attrSelN] 复合属性选择器,需要同时满足多个条件时使用。


3.4  表单过滤器


:input 匹配所有 input, textarea, select 和 button 元素

:text 匹配所有 文本输入框

:password 匹配所有的密码输入框

:radio 匹配所有的单选框

:checkbox 匹配所有的复选框

:submit 匹配所有提交按钮

:image 匹配所有 img 标签

:reset 匹配所有重置按钮

:button 匹配所有 input type=button <button>按钮

:file 匹配所有 input type=file 文件上传

:hidden 匹配所有不可见元素 display:none 或 input type=hidden


3.5  表单对象属性过滤器


:enabled 匹配所有可用元素

:disabled 匹配所有不可用元素

:checked 匹配所有选中的单选,复选,和下拉列表中选中的 option 标签对象

:selected 匹配所有选中的 option



详细见jQueryAPI-1.41.chm,连接我已近放到下面了,需要的话自己拿。


image.png


image.png





链接:https://pan.baidu.com/s/1ivAcUQ06vJg2EJVItT9dkQ

提取码:c6nx



相关文章
|
27天前
|
JavaScript 前端开发
jQuery 选择器
jQuery 选择器
28 2
|
2月前
|
JavaScript 索引
jQuery 选择器
jQuery 选择器
39 5
|
14天前
|
JavaScript 前端开发
jQuery 选择器
jQuery 选择器用于操作 HTML 元素,支持基于 id、类、类型、属性等条件选择元素。它扩展了 CSS 选择器的功能,并使用 $() 符号。例如,$(&quot;p&quot;) 选取所有段落元素,而 $(&quot;button&quot;).click(function(){ $(&quot;p&quot;).hide(); }) 实现点击按钮后隐藏所有段落。
|
5月前
|
JavaScript 前端开发
jQuery 选择器
jQuery 选择器
33 0
|
5月前
|
JavaScript 前端开发 索引
jQuery的选择器与自带函数详解
jQuery的选择器与自带函数详解
|
2月前
|
JavaScript 前端开发 CDN
jQuery学习记录--jQuery语法,选择器,事件及hide(),show(), toggle()
本文是关于jQuery的学习笔记,涵盖了jQuery的简介、语法、选择器、事件处理以及hide()、show()、toggle()等方法的使用。
jQuery学习记录--jQuery语法,选择器,事件及hide(),show(), toggle()
|
2月前
|
JavaScript
jQuery 选择器
jQuery 选择器
23 3
|
2月前
|
JavaScript 索引
jQuery 选择器
jQuery 选择器
27 1
|
3月前
|
JavaScript 索引
jQuery的选择器有几种?
jQuery的选择器有几种?
34 1
|
JSON 前端开发 JavaScript
【前端】使用jQuery封装一套UI组件 - 级联选择器组件
本篇文章来讲解下级联选择器组件 级联选择器,在实际项目中也是比较常用的组件,比如:省市区三级关联,上下级联动等 最后面会附上全部代码
1325 0