JQUERY选择器按照功能主要分为

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

jQuery选择器按照功能主要分为"选择"和"过滤".并且是配合使用的.可以同时使用组合

成一个选择器字符串.主要的区别是"过滤"作用的选择器是指定条件从前面匹配的内容中

筛选,"过滤"选择器也可以单独使用,表示从全部"*"中筛选.比如:

$(":[title]")

等同于:

$("*:[title]")

而"选择"功能的选择器则不会有默认的范围,因为作用是"选择"而不是"过滤".

下面的选择器分类中,带有"过滤器"的分类表示是"过滤"选择器,否则就是"选择"功能的

选择器.

jQuery选择器分为如下几类:

[说明]

1.点击"名称"会跳转到此方法的jQuery官方说明文档.

2.可以在下节中的jQuery选择器实验室测试各种选择器

1.基础选择器Basics

名称说明举例

#id根据元素Id选择$("divId")选择ID为divId的元素element根据元素的名称选择,$("a")选择所有元素

.class根据元素的css类选择$(".bgRed")选择所用CSS类为

bgRed的元素

*选择所有元素$("*")选择页面所有元素

selector1, selector2, selectorN 可以将几个选择器用","分隔开然后再拼成一个

选择器字符串.会同时选中这几个选择器匹配的

内容.

$("#divId,a,.bgRed")

[学习建议]:大家暂时记住基础选择器即可,可以直接跳到下一节"jQuery选择器实验室"进行动手练习,以后再回来慢慢学习全部的选择器,或者用到的时候再回来查询.

2.层次选择器Hierarchy

名称说明举例

ancestor descendant 使用"form input"的形式选中form中的所

有input元素.即ancestor(祖先)为from,

descendant(子孙)为input.

$(".bgRed div")选择CSS类为

bgRed的元素中的所有

元素.

parent>child选择parent的直接子节点child.child必

须包含在parent中并且父类是parent元

素.$(".myList>li")选择CSS类为myList元素中的直接子节点

  • 对象.

    prev+next prev和next是两个同级别的元素.选中在

    prev元素后面的next元素.$("#hibiscus+img")选在id为hibiscus元素后面的img对象.

    prev~siblings选择prev后面的根据siblings过滤的元素

    注:siblings是过滤器$("#someDiv~[title]")选择id为someDiv的对象后面所有带有title属性的元素

    3.基本过滤器Basic Filters

    名称说明举例

    :first匹配找到的第一个元素查找表格的第一行:$("tr:first")

    :last匹配找到的最后一个元

    查找表格的最后一行:$("tr:last")

    :not(selector)去除所有与给定选择器

    匹配的元素查找所有未选中的input元素: $("input:not(:checked)")

    :even匹配所有索引值为偶数

    的元素,从0开始计数

    查找表格的1、3、5...行:$("tr:even") :odd匹配所有索引值为奇数

    的元素,从0开始计数

    查找表格的2、4、6行:$("tr:odd") :eq(index)匹配一个给定索引值的

    元素

    注:index从0开始计数

    查找第二行:$("tr:eq(1)")

    :gt(index)匹配所有大于给定索引

    值的元素

    注:index从0开始计数查找第二第三行,即索引值是1和2,也就是比0大:$("tr:gt(0)")

    :lt(index)选择结果集中索引小于

    N的elements

    注:index从0开始计数查找第一第二行,即索引值是0和1,也就是比2小:$("tr:lt(2)")

    :header选择所有h1,h2,h3一类

    的header标签.给页面内所有标题加上背景色:

    $(":header").css("background","#EEE");

    :animated匹配所有正在执行动画

    效果的元素只有对不在执行动画效果的元素执行一个动画特效: $("#run").click(function(){

    $("div:not(:animated)").animate({left: "+=20"},1000);

    });

    4.内容过滤器Content

    Filters

    名称说明举例

    :contains(text)匹配包含给定文本的元素查找所有包含"John"的div元

    素:$("div:contains('John')")

    :empty匹配所有不包含子元素或者

    文本的空元素查找所有不包含子元素或者文本的空元素:$("td:empty")

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

    素的元素给所有包含p元素的div元素添加一个text 类:$("div:has(p)").addClass("test");

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

    元素查找所有含有子元素或者文本的td元素:$("td:parent")

    5.可见性过滤器Visibility

    Filters

    名称说明举例

    :hidden匹配所有的不可见元素

    注:在1.3.2版本中,hidden匹

    配自身或者父类在文档中不占用

    空间的元素.如果使用CSS

    查找所有不可见的tr元素:$("tr:hidden")