首页 > 编程笔记 > JavaScript笔记
阅读:12
jQuery基本过滤器有哪些?(附带实例)
基本过滤器是指以冒号开头并通常用于实现简单过滤效果的过滤器,例如匹配找到的第一个元素等。
jQuery 的基本过滤器如下表所示:
【实例 1】实现一个带表头的双色表格。
1) 创建一个名为 index.html 的文件,在该文件的 <head> 标记中使用下面的语句引入 jQuery 库。
2) 在页面的 <body> 标记中,添加一个 5 行 5 列的表格。关键代码如下:
3) 编写 CSS 样式,通过元素选择器设置单元格的样式,并且编写 th、even 和 odd 这 3 个类选择符,用于控制表格中相应行的样式。具体代码如下:
4) 在引入 jQuery 库的代码下方编写 jQuery 代码,分别设置表格奇数行与偶数行应用的 CSS 类,并且单独为第 1 行添加名为“th”的类。具体代码如下:
运行本实例,将显示下图所示的效果:

图 1 带表头的双色表格
其中,第 1 行为表头,编号为 1 和 3 的行应用的是偶数行的样式,编号为 2 和 4 的行应用的是奇数行的样式。
jQuery 的基本过滤器如下表所示:
过滤器 | 说明 | 示例 |
---|---|---|
:first | 匹配找到的第一个元素,它是与选择器结合使用的,jQuery 3.4 中已弃用,请使用.first() | $("tr:first") //匹配表格的第一个元素 |
:last | 匹配找到的最后一个元素,它是与选择器结合使用的,jQuery 3.4 中已弃用,请使用.last() | $("tr:last") //匹配表格的最后一个元素 |
:even | 匹配所有索引值为偶数的元素,索引值从 0 开始计数,jQuery 3.4 中已弃用,请使用.even() | $("tr:even") //匹配索引值为偶数的元素 |
:odd | 匹配所有索引值为奇数的元素,索引值从 0 开始计数,jQuery 3.4 中已弃用,请使用.odd() | $("tr:odd") //匹配索引值为奇数的元素 |
:eq(index) | 匹配一个给定索引值的元素,jQuery 3.4 中已弃用,请使用.eq(index) | $("div:eq(1)") //匹配索引值为 1 的 <div> 元素 |
:gt(index) | 匹配所有索引值大于给定索引值的元素,jQuery 3.4 中已弃用,请使用.gt(index) | $("span:gt(0)") //匹配索引值大于 0 的 <span> 元素(注:大于 0,而不包括 0) |
:lt(index) | 匹配所有索引值小于给定索引值的元素,jQuery 3.4 中已弃用,请使用.lt(index) | $("div:lt(2)") //匹配索引值小于 2 的 <div> 元素(注:小于 2,而不包括 2) |
:header | 匹配如 <h1>、<h2>、<h3>…之类的标题元素 | $("header") //匹配全部的标题元素 |
:not(selector) | 去除所有与给定选择器匹配的元素 | $("input:not(:checked)") //匹配没有被选中的 <input> 元素 |
:animated | 匹配所有正在执行动画效果的元素 | $("div:animated ") //匹配所有正在执行动画效果的 <div> 元素 |
:lang | 匹配给定语言的所有元素,jQuery 1.9 以后可以使用 | $("p:lang(it)") //匹配所有 <p> 的语言的元素 |
:focus | 匹配当前获取焦点的元素 | elem.is(":focus") //匹配当前获得焦点的元素 |
:root | 匹配文档的根元素,jQuery 1.9 以后可以使用 | $(":root").css("background-color","yellow") //设置 <html> 背景颜色为黄色 |
:target | 匹配由文档 URI(Uniform Resource Identifier,统一资源标识符)的格式化识别码表示的目标元素,jQuery 1.9 以后可以使用 | 给定 URI 为 http://example.com/#foo,$(":target")将选择lt &;p id="foo"> 元素 |
【实例 1】实现一个带表头的双色表格。
1) 创建一个名为 index.html 的文件,在该文件的 <head> 标记中使用下面的语句引入 jQuery 库。
<script type="text/javascript" src="../js/jquery-3.6.4.min.js"></script>
2) 在页面的 <body> 标记中,添加一个 5 行 5 列的表格。关键代码如下:
<table width="98%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#3F873B"> <tr> <td width="11%" height="27">编号</td> <td width="14%">祝福对象</td> <td width="12%">祝福者</td> <td width="33%">字条内容</td> <td width="30%">发送时间</td> </tr> <tr> <td height="27">1</td> <td>琦琦琦</td> <td>妈妈</td> <td>愿你健康快乐地成长!</td> <td>2023-05-15 13:06:06</td> </tr> ... </table> <!--此处省略了其他行的代码-->
3) 编写 CSS 样式,通过元素选择器设置单元格的样式,并且编写 th、even 和 odd 这 3 个类选择符,用于控制表格中相应行的样式。具体代码如下:
<style type="text/css"> td{ font-size:12px; padding:3px; } .th{ background-color:#B6DF48; font-weight:bold; text-align:center; } .even{ background-color:#E8F3D1; } .odd{ background-color:#F9FCEF; } </style>
4) 在引入 jQuery 库的代码下方编写 jQuery 代码,分别设置表格奇数行与偶数行应用的 CSS 类,并且单独为第 1 行添加名为“th”的类。具体代码如下:
<script type="text/javascript"> $(document).ready(function() { $("tr:even").addClass("even"); // 设置偶数行应用的 CSS 类 $("tr:odd").addClass("odd"); // 设置奇数行应用的 CSS 类 $("tr:first").removeClass("even"); // 移除 even 类 $("tr:first").addClass("th"); // 添加 th 类 }); </script>在上面的代码中,为表格的第 1 行添加 th 类时,需要先将该行应用的 even 类移除,然后再进行添加,否则添加的 th 类将不起作用。
运行本实例,将显示下图所示的效果:

图 1 带表头的双色表格
其中,第 1 行为表头,编号为 1 和 3 的行应用的是偶数行的样式,编号为 2 和 4 的行应用的是奇数行的样式。