过滤选择器(过滤器)类似于CSS3里的伪类,包含

1. 基本过滤器

2. 内容过滤器

3. 可见性过滤器

4. 子元素过滤器

5. 其他方法

一.  基本过滤器

过滤器名 jQuery语法 注释
:first $("li:first") 选取第一个li元素
:last $("li:last") 选取最后一个li元素
:not(selector) $("li:not(.red)") 选取class不是red的li元素
:even $("li:even") 选取索引(0开始)是偶数的所有元素
:odd $("li:odd") 选取索引(0开始)是奇数的所有元素
:eq(index)

$("li.eq(2)") 正数第三个

$$("li.eq(-2)") 倒数第二个

选择索引(0开始)等于index的元素
:gt(index) $("li:gt(2)") 选择索引(0开始)大于index的元素
:lt(index) $("li:lt(2)") 选择索引(0开始)小于index的元素
:header $(":header") 选择标题元素h1~h6
:focus $("input:focus")

选择当前被焦点元素

focus过滤器,必须是网页初始状态的已经被激活焦点的元素才能实现元素获取。而不是鼠标点击或Tab键敲击激活的

四个方法

first() 等同于 :first
last() 等同于:last
eq(index) 等同于:eq(index)
not(selector) 等同于:not(selector)
    <ul id="d1">
<li>列表1</li>
<li>列表2</li>
<li class="red">列表3</li>
<li>列表4</li>
<li>列表5</li>
<li>列表6</li>
</ul> <ul>
<li>列表1</li>
<li>列表2</li>
<li>列表3</li>
<li>列表4</li>
<li>列表5</li>
<li>列表6</li>
</ul> <div>
<h3>我是标题</h3>
</div> <input type="text"/>
<input type="text" /> <div style="display:none">aduabcppoip</div>
<div>jhkjkhjkhjkhjk</div>
<div></div>
<div></div>
    $("li:first").css("background", "grey");
$("li:last").css("background", "grey");
$("#d1 li:last").css("background", "grey");
$("ul:first li:last").css("background", "grey");
$("li:not(.red)").css("background", "grey");
$("li:even").css("background", "grey");
$("li:odd").css("background", "grey");
$("li:eq(2)").css("background", "grey");
$("li:eq(-2)").css("background", "grey");
$("li:gt(2)").css("background", "grey");
$("li:lt(3)").css("background", "grey");
$("li:lt(-3)").css("background", "grey");
$(":header").css("background", "grey");
$("div :header").css("background", "grey");
$("input").get(1).focus();//先让文本框选中
$("input:last:focus").css("background", "red"); $("li").first().css("background", "grey");
$("li").last().css("background", "grey");
$("li").not(".red").css("background", "grey");
$("li").eq(2).css("background", "grey");

二. 内容过滤器

内容过滤器的过滤规则主要是包含了子元素或文本内容

过滤器名 JQuery语法 注释
:contains(text) $(":contains('abc')") 选取含有“abc”文本的元素
:empty $("div:empty") 选取不包含子元素或空文本的div元素
:has(selector) $(":has(.red)") 选择子元素含有class是res的元素
:parent $(":parent") 选取含有子元素或文本的元素

四个方法

has(selector) 等同于:has(selector)
parent() 选择当前元素的父元素
parents() 选择当前元素的父元素和祖先元素
parentsUntil() 选择当前元素的遇到某个元素停止

注意:这里的parent方法和:parant过滤器是不同的

    $("div:contains('abc')").css("background", "grey");
$("div:empty").css("height", "20px").css("background", "grey");
$("ul:has(.red)").css("background", "grey");
$("div:parent").css("background", "grey"); $("ul").has(".red").css("background", "grey");
$("li").parent().css("background", "grey");
$("li").parent().eq(0).css("background", "grey");
$("li").parents().css("background", "grey");
$("li").parentsUntil("body").css("background", "grey");

三. 可见性过滤器

可见性过滤器根据元素的可见性和不可见性来选择相应元素

:hidden $(":hidden") 选取不可见元素
:visible $(":visible") 选取可见元素

:hidden过滤器一般是包含的内容为:css样式为dispaly:none, input表单类型为type="hidden"和          visiblity:hidden的元素。

    $("div:hidden").css("background", "grey").show(1000);
$("div:visible").css("background", "grey")

jQuery_3_过滤选择器的更多相关文章

  1. jQueryt过滤选择器

    jQueryt过滤选择器 基本过滤选择器 选择器 描述 返回 示例 重要 :first 返回第一个元素 单个元素     :last 返回最后一个元素 单个元素     :not(selector) ...

  2. jquery选择器(三)-过滤选择器

    一.基本过滤选择器 二.内容过滤选择器 1. 包含文本内容为“text”的元素 2. 含有某个选择器所匹配的父元素 3. 包含有子元素或者文本的父元素 4. 不含有子元素或者文本的父元素 三.可见性过 ...

  3. jQuery 简单过滤选择器

    <!DOCTYPE HTML> <html> <head> <title> 使用jQuery基本过滤选择器 </title> <scr ...

  4. jquery :checked(过滤选择器) 和 空格:checked(后代选择器)

    jquery 过滤选择器 和 后代选择器 <%@ page language="java" contentType="text/html; charset=UTF- ...

  5. jQuery过滤选择器

    //基本过滤器$('li:first').css('background','#ccc');//第一个元素$('li:last').css('background','red');//最后一个元素$( ...

  6. JQuery 可见性过滤选择器

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  7. JQuery 内容过滤选择器

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  8. jQuery选择器介绍:基本选择器、层次选择器、过滤选择器、表单选择器

    选择器是jQuery的根基,在jQuery中,对事件处理.遍历DOM和Ajax操作都依赖于选择器.因此,如果能熟练的使用选择器,不仅能简化代码,而且可以达到事半功倍的效果.jQuery选择器完全继承了 ...

  9. jQuery过滤选择器:not()方法使用介绍

    在jQuery的早期版本中,:not()筛选器只支持简单的选择器,说明我们传入到:not这个filter中的selector可以任意复杂,比如:not(div a) and :not(div,a) & ...

随机推荐

  1. vue+element-ui 实现分页

    <el-table ref="multipleTable" :data="tableData.slice((currentPage-1)*pagesize,curr ...

  2. Glance代码分析

    V2版本的glance-api采用Proxy的方式来构建对象(对象套对象),有点类似装饰器模式,包裹的顺序是 Auth(外层) -> Notifier -> Policy -> Qu ...

  3. nextSibling 和nextElementSibling

    在使用DOM过程中发现一个问题: 使用nextSibling 属性返回指定节点之后紧跟的节点,在相同的树层级中.被返回的节点以 Node 对象返回. this.arrow = this.screen. ...

  4. Mysql-15-mysql分布式应用

    1.分布式应用的概念和优势 分布式数据库是指利用高速网络将物理上分散的多个数据存储单元连接起来组成一个逻辑上统一的数据库.分布式数据库的基本思想是将原来集中式数据库中的数据分散存储到多个通过网络连接的 ...

  5. Ckeditor 4 复制粘贴截图并转化base64格式保存至数据库

    虽然Ckeditor 中自带的有上传图片和文件的功能,但是有时候我们并不需要把图片保存至服务器的文件夹中. 反而是截图复制粘贴,把图片转化为base64格式保存在数据库中即可满足要求. 1.首先下载安 ...

  6. Python中list的复制及深拷贝与浅拷贝探究

    在Python中,经常要对一个list进行复制.对于复制,自然的就有深拷贝与浅拷贝问题.深拷贝与浅拷贝的区别在于,当从原本的list复制出新的list之后,修改其中的任意一个是否会对另一个造成影响,即 ...

  7. java中的String,StringBuffrer,Stringbuilder的区别

    简单描述下 效率:StringBuilder>StringBuffer>String 使用场景: 如果要操作少量的数据用 = String 单线程操作字符串缓冲区 下操作大量数据 = St ...

  8. POJ2151-Check the difficulty of problems

    题目链接:点击打开链接 Check the difficulty of problems Time Limit: 2000MS   Memory Limit: 65536K Total Submiss ...

  9. CF10D/POJ2127 LCIS解题报告

    题目传送门(洛谷)(CF)(POJ) 前言 期末考试前的最后一篇题解,希望期末考  rp++ 奇怪,为什么在CF上能过的代码到POJ上就 听取WA声一片  (不管了) 题目思路 LCIS模版O(n²) ...

  10. PAT甲级——1101 Quick Sort (快速排序)

    本文同步发布在CSDN:https://blog.csdn.net/weixin_44385565/article/details/90613846 1101 Quick Sort (25 分)   ...