jQuery过滤器

在jQuery中可以使用过滤器对选取的数据进行过滤,从而选择更明确的元素。jQuery过滤器的通常用法如下,

$(“选择器 : 过滤器”)

1. 基本过滤器


1.1 :first

     使用 :first 过滤器可以匹配到找到的第一个元素。例如,使用 $(“tr:first”) 可以选择表格的第一行

1.2 :last

     使用 :last 过滤器可以匹配到找到的最后一个元素。例如,使用 $(“tr:first”) 可以选择表格的最后一行

1.3 :not(<选择器>)

     使用 :not(<选择器>) 过滤器可以去除所有与给定选择器匹配的元素。例如,使用 $(“input :not(checked)”) 可以选择所有未被选中的 input 元素。

1.4 :even

     使用 :even 过滤器可以匹配所有索引值为偶数的元素。注意,索引值是从0开始计数。例如,使用 $(“tr:even”) 可以选择表格的奇数行(索引值为偶数)。

1.5 :odd

     使用 :odd 过滤器可以匹配所有索引值为奇数的的元素。例如,使用 $(“tr:odd”) 可以选择表格的偶数行

1.6 :eq(index)

     使用 :eq(index) 过滤器可以匹配索引值为 index 的元素。例如,使用 $(“tr:eq(1)”)可以选择表格的第一行。

1.7 :gt(index)

     使用 :gt(index) 过滤器可以匹配索引值大于 index 的元素。例如,使用 $(“tr:gt(1)”)可以选择表格第一行后面的行。

1.8 :lt(index)

     使用 :lt(index) 过滤器可以匹配索引值小于 index 的元素。例如,使用 $(“tr:lt(2)”)可以选择表格的第1、2行(索引值为0、1)。

1.9 :header

     使用 :header 过滤器可以选择所有 h1、h2、h3 一类的header 标签。

1.10 :animated

     使用 :animated 过滤器可以匹配所有正在执行动画效果的元素。

2. 内容过滤器


2.1 :contains()

     使用 :contains() 过滤器可以匹配包含指定文本的元素。例如,使用 $(“div:contains(HTML)”) 可以选择内容包含 HTML 的 div 元素。

2.2 :empty()

     使用 :empty() 过滤器可以匹配不包含子元素或文本为空的元素。例如,使用 $(“td:empty”)可以选择内容为空的表格单元格。

2.3 :has()

     使用 :has() 过滤器可以匹配包含指定子元素的元素。例如,使用 $(“div:has(p)”) 可以选择包含 p 元素的 div 元素

2.4 :parent()

     :parent()过滤器与 :empty() 过滤器作用正好相反,使用它可以匹配至少包含一个子元素或文本的元素。

3. 可见性过滤器

     使用可见性过滤器可以根据元素的可见性对元素进行过滤。jQuery 包含 :hidden 和 :visible 两个可见性过滤器。:hidden 可以匹配所有不可见的元素;:visible 可以匹配所有可见的元素。例如,$(“input:hidden”) 可以匹配所有不可见的 input 元素。

4. 属性过滤器


4.1 [属性名]

     可以使用 $([属性名]) 过滤器匹配包含指定属性名的元素。例如,$(“div[id]”)可以匹配所有包含 id 属性的 div 元素。

4.2 [属性名=值]

     可以使用 $([属性名=值]) 过滤器匹配指定属性等于指定值的元素。例如,$(“div[id=id1]”) 可以匹配所有id 属性等于 id1 的 div 元素。

4.3 [属性名!=值]

     可以使用 $([属性名!=值]) 过滤器匹配指定属性不等于指定值的元素。例如,$(“div[id!=id1]”) 可以匹配所有 id属性不等于id1 的div 元素。

4.3 [属性名^=值]

     可以使用 $([属性名^=值]) 过滤器匹配指定属性以指定值开始的元素。例如,$(“input[name^=’news’]”) 可以匹配所有的 name 属性以 news 开始的input 元素。

4.5 [属性名$=值]

     可以使用 $([属性名$=值]) 过滤器匹配指定属性以指定值结尾的元素。

4.6 [属性名*=值]

     可以使用 $([属性名*=值]) 过滤器匹配指定属性包含指定值的元素。

4.7 复合属性过滤器

     可以使用 $([属性过滤器 1] [属性过滤器 2]……[属性过滤器 n]) 格式的复合属性过滤器匹配满足多个复合属性过滤器的元素。例如,$([“input[id][name*=’news’]”])可以匹配所有包含 id 属性且 name 属性值包含 news 的 input 元素。

5. 子元素过滤器


5.1 :nth-child(index/even/odd/equation)

     可以使用 :nth-child(index/even/odd/equation)过滤器匹配指定父元素下的一定条件的索引值的子元素。例如,$(“ul li:nth-child(2)”) 可以匹配 ul 元素中的第2个 li 子元素,$(“ul li:nth-child(even)”) 可以匹配 ul 元素中的第偶数个 li 子元素。

5.2 :first-child

     可以使用 :first-child 过滤器匹配第一个子元素。例如,$(“ul li:first-child”) 可以匹配 ul 列表中的第一个 li 子元素。

5.3 :last-child

     可以使用 :last-child 过滤器匹配最后一个子元素。

5.4 :only-child

     可以使用 :only-child 过滤器匹配父元素的唯一子元素。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值