jQuery 学习日记(二):选择器与过滤器

USB PD Sink HUSB238A可应用于24V电动风扇/电动工具 HUSB238A在I2C模式下,可申请PD3.1 EPR AVS功率,可申请24V电压直接给电机供电 阅读详情

jQuery 使用正则表达式解析选择器的表达式,其表达式的语法并不复杂,如果使用过 Emmet 插件的同学使用起来一定非常的熟悉,因为 jQuery 选择器的语法和 Emmet 的语法非常相似。

基本选择器:

// id选择器
$("#id");

// 标签选择器
$("tag");

// 类选择器;
$(".class");

// 通配选择器
$("*");

// 组选择器
$("expr1, expr2");

层选择器:

/* 包含选择器,该选择器返回父元素下所有子元素,无论层级关系 */
$("ancestor chlid");

/* 子选择器,该选择器只返回父元素的直接子元素,多层关系的子元素不返回 */
$("parent>child");

/* 相邻选择器,该选择返回选定元素的下一个元素;使用prev来定位,但实际上返回的是next */
$("prev+next");

/* 兄弟选择器,该选择器返回选定元素的之后的所有兄弟元素,可以理解成allNext */
$("prev~siblings");


伪类选择器:

定位选择器;

/* 定位选择器 */

// 满足expr表达式的集合的第一个元素
$("expr:first");

// 满足expr表达式的集合的最后一个元素
$("expr:last");

// 满足expr表达式的集合的第index个元素
$("expr:eq(index)");

/* 范围选择器 */
$("expr:even");  //偶数位元素
$("expr:odd");  //奇数位元素
$("expr:gt(index)");  //大于索引位的元素
$("expr:lt(index)");  //小于索引位的元素

/* 排除选择器 */
$("expr1:not(expr2)");  //满足expr1且不满足expr2表达式的元素


内容选择器:

$("expr1:contains(expr2)");  //满足expr1表达式且包含内容expr2的元素

$("expr1:has(expr2)"); //满足expr1表达式且包含expr2元素的元素

$("expr:hidden");  //匹配所有不可见元素,注意:这里的不可见只能匹配出 display:none 的元素,无法匹配出 visibility:hidden 的元素

$("expr:visible");  //匹配所有可见元素

/* 表单内容选择器 */
$("input:type");  //type为input的type值,例如text,submit等

$("input:enabled");  //可用表单元素

$("input:disabled");  //不可用表单元素

$("input:checked");  //已选中元素,不包括option

$("input:selected");  //已选中元素,用于option

$("[attribute=value]"); //属性选择器

通过选择器和过滤器的使用,我们可以更好的定位到我们需要操作的DOM元素,下面讲解过滤器;

$("expr").hasClass("class");  //类过滤,检查当前元素是否含有class类,该函数返回的是一个bool值,注意,不是DOM对象;

$("expr").eq(index);  //坐标过滤,返回数组中指定坐标的元素;
/* 这里肯定有同学会问道,这个东西和get(index)和[index]有什么不同,eq(index)返回的实质上海是一个jQuery对象,他只起到过滤的作用,而get和[]则返回的DOM元素  */

$("expr1").filter("expr2");  //表达式过滤,相当于进行二次筛选;

$("expr").filter(function(index));  //函数表达式过滤,此方法非常灵活,可以在函数中进行控制,index代表的是当前的索引值,该函数返回一个bool值;

$("expr1").has("expr2");  //返回满足表达式1且包含满足表达式2的元素的元素集合

对于函数表达式过滤,很多同学可能不理解,下面举个例子,有如下HTML代码

<ul>
	<li class="licls">i am here</li>
	<li class="licls">i am here</li>
	<li class="licls">i am here</li>
</ul>
<ul>
	<li>i am not</li>
	<li>i am not</li>
	<li>i am not</li>
</ul>


以及如下js代码

var lis = $("li");
var filterLis = lis.filter(function(index){
	var cls = this.getAttribute("class");
	if("licls" == cls){
		console.log(index+": "+this.innerText);
		return true;
	}else{
		console.log(index+": "+this.innerText);
		return false;
	}
});
console.log(filterLis.text());

则控制台将会输出:

0: i am here

1: i am here

2: i am here

3: i am not

4: i am not

5: i am not

i am herei am herei am here

通过这个例子我们可以很深刻的理解函数表达式过滤的原理:

1. 当函数返回 true 的时候则返回当前这个元素,反之亦然;

2. 在函数中处理的对象是当前的DOM元素,index代表当前位置的索引;

3. 返回的是一个 jQuery 对象,不是DOM元素数组;


查找:

$("expr1").children("expr2");  //返回满足expr1表达式的元素的满足expr2表达式的直接子元素,返回的实际上是children,该表达式返回的是 jQuery 对象;

$("expr1").parent("expr2");  //返回满足条件的当前元素的直接父元素;

$("expr1").parents("expr2");  //从当前元素开始,返回满足条件的直接父元素,直至HTML元素,可以理解为返回所有直接父元素;

$("expr1").parentUntil("expr2");  //返回当前元素直到满足expr2表达式的父元素之间的所有父元素;

// 向下查找兄弟元素
$("expr1").next("expr2"); 
$("expr1").nextAll("expr2");
$("expr1").nextUntil("expr2");

//向上查找兄弟元素
$("exp1r").prev("expr2") ;
$("exp1r").prevAll("expr2") ;
$("exp1r").prevUntil("expr2") ;

// 以上方法类似;

$("expr1").siblings("expr2");  //返回当前元素所有满足条件的同级元素,不包括该元素本身
$("expr1").add("expr2");  //添加查找对象,通过expr1选择出一组元素,再通过expr2选择出一组元素,将该组元素添加在组当中;










lattice 黑盒子的生成和使用(Creating Your Own Black Box Modules) 很多客户,特别是外包项目,需要做黑盒子,防止他人看到源码,那么这就需要对相关的源码打包加封了。diamond help 说的也是模糊模糊的,这次给出实际验证过的流程。 1.先将要加封的模块间一个工程,建好工程,写好代码之后,模块名字叫做crosslink(这个使用黑盒子的时候要用),代码如下: module crosslink( output wire[3:0] led, input wire clk, input wire reset ); reg [29:0] cnt; reg [3:0] led1; 阅读详情

相关推荐

Mac用户必看:PD虚拟机网络初始化失败的3分钟修复指南(附详细截图)

本文针对Mac用户在Parallels Desktop(PD虚拟机)启动时遇到的“网络初始化失败”问题,提供了快速诊断与修复指南。核心原因是macOS系统更新后权限未正确授予。文章通过详细的三步修复法(关闭进程、修改配置文件、重新授权重启),帮助用户在3分钟内恢复虚拟机网络连接,并附有排查清单与预防建议。

weixin_29231027的博客 538

jQuery过滤选择器

【代码】jQuery过滤选择器。

m0_71385552的博客 378

未来智能家居解决方案:AI应用架构师的前沿探索

当你加班到深夜回家时,门锁自动识别你的脚步声解锁,玄关灯渐亮成你最爱的暖光,空调早已调到25℃(你夏天的习惯温度),音箱播放着最近循环的爵士乐,茶几上的智能水壶烧好了温水——这不是科幻电影,而是未来智能家居的日常。如何让“冰冷的设备”变成“懂你的伙伴”。我们将深入探讨五大前沿技术(边缘AI、多模态融合、联邦学习、数字孪生、个性化推荐)的底层原理,用“家里的小管家”“邻居互相学习”等生活化比喻简化复杂概念,结合代码示例与架构图还原实现流程,并通过智能卧室、智能厨房等真实案例展示落地路径。

AI天才研究院 1411

jQuery基础——使用过滤器—1过滤

jQuery选择器能够模仿CSS和XPath语法,提供高效、准确匹配元素的方法,jQuery过滤器是一系列简单、实用的jQuery对象方法,建立在选择器基础上对jQuery对象进行二次过滤。在jQuery框架中,过滤器通过Sizzle.filter子类实现,包含过滤、查找和串联三类操作行为。

weixin_57575133的博客 3141

差分运放实战:如何快速计算带直流偏置的电路(附详细推导步骤)

本文详细解析了差分运放电路在带直流偏置设计中的核心计算方法和实战技巧。通过可视化参数关系和分步拆解,帮助工程师快速掌握电路设计精髓,包括虚短虚断原理、偏置电压计算及非理想因素处理,提升信号调理和传感器接口设计的效率与精度。

o4p5q6r7s的博客 411

费斯托SPAN压力传感器的调试

本体为压力传感器,检测气压大小,通过设置参数,在上电上气时对气压进行判断,进而通过自身逻辑的判断,控制传感器的通断,进而控制机械部位的工作与运行;通电之后为如下图所示的样子有三个按键ABEdit键(编辑键、确认键)两步即可轻松连接。

大小曲奇的博客 1万+

jQuery基本过滤器

jQuery基本过滤器入门

weixin_62394372的博客 358

单目视觉定位:深入解析PNP算法在机器人导航中的实战应用

本文深入解析了PNP算法在机器人单目视觉定位中的核心原理与实战应用。通过拆解坐标变换四步,详细阐述了如何从二维图像点反求相机三维位姿。文章结合OpenCV的solvePnP函数,提供了算法选择、参数调优及结果后处理的实用指南,并针对机器人导航中的特征匹配、尺度不确定性等挑战,给出了鲁棒性优化与实时性平衡的解决方案。

weixin_29083649的博客 419

jQuery选择器(二) 过滤选择器及可见性过滤选择器的使用

本篇文章主要介绍在 jQuery中过滤选择器及可见性过滤选择器的使用以及部分理论知识 在jQuery中,过滤选择器是用来过滤匹配元素集合的选择器。它们允许您选择特定的元素,如第一个、最后一个、奇数或偶数位置的元素,或者根据它们的属性、内容或其他条件进行选择。过滤选择器可以帮助您更精确地选择需要的元素,从而使操作更方便和高效。//选取所有元素中的最后一个元素3

Jin_Xiang123的博客 2491

手把手教你学SIMULINK模块库文件专栏-From Workspace 模块详解

模块是 Simulink 中的一个信号源模块,用于从 MATLAB 工作区加载数据作为输入信号。该模块允许用户将预先在 MATLAB 中生成的数据(如时间序列、矩阵或结构体)导入到 Simulink 模型中,从而实现更灵活的信号输入和仿真控制。通过深入了解其参数的影响及结合 MATLAB 脚本的应用,读者可以更加有效地利用这一模块进行仿真和研究。此外,通过实际应用场景的扩展以及常见问题解答部分的帮助,能够更好地掌握。模块是一个非常灵活的工具,适用于需要从 MATLAB 工作区加载数据的各种场景。

MHD0815的博客 633

openbmc 支持mctp over pcie(二)

本文介绍了在OpenBMC系统中实现MCTP over PCIe的社区方案,主要针对AMD CPU和Intel CPU平台。方案基于社区开发的mctpd应用层和内核驱动,通过修改设备树(dts)配置内存区域,并编译Linux内核模块。验证时可通过查看/proc/net/protocols确认MCTP协议支持,使用ip addr命令检查mctppci0网络接口状态。相关代码和文档参考了AspeedTech和CodeConstruct的GitHub仓库。该方案为BMC作为MCTP端点提供了标准化实现方法。

wit_yuan的专栏 378

JQuery全部过滤选择器详细介绍上

1、:first 用法: $(“tr:first”) ; 返回值 单个元素的组成的集合2、:last 用法: $(“tr:last”) 返回值 集合元素3、:not(selector)用法: $(“input:not(:checked)”)返回值 集合元素4、:even 用法: $(“tr:even”) 返回值 集合元素5、: odd 用法: $(“tr:odd”) 返回值 集合元素6、:eq(index)用法: $(“tr:eq(0)”) 返回值 集合元素7、:gt(index)用法: $(“tr:gt(

业精于勤,荒于嬉 1188

ESP32-C3入门教程 蓝牙篇①——基于Blufi 的 WiFi 智能配网

文章目录一、前言二、WiFi配网方式三、快速运行四、运行效果五、ESP32-C3程序流程5.1 主程序5.2 回调函数5.3 SmartConfig线程5.4 流程图六、关键函数6.1 设置SmartConfig的协议类型6.2 启动SmartConfig6.3 停止SmartConfig七、其他八、参考 一、前言 本文基于VS Code IDE进行编程、编译、下载、运行等操作 基础知识点请查阅:ESP32-C3入门教程 基础篇①——基于VS Code构建Hello World 二、WiFi配网方式 W

7765

jQuery选择器

###1、祖先后代选择器 方法:$("") 举例:$("")

Steines的博客 361

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

黑马程序员_学习日记63_710jQuery2(属性选择器、表单选择器、操作Dom节点、事件、动画)

一、属性过滤选择器: $(“div[id]”) 选取有id属性的 $(“div[title=test]”) 选取title属性为”test”的,jQuery中没有对getElementByName进行封装,用$(“input[name=abc]”) $(“div[title != test]”) 选取title属性不为”test”的 $(“div[id *= div]”) 选取给定

Jack's Domain 736

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

工学日记1008

什么JQuery: jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架 或叫类库)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理...

Chinaonetwo的博客 142

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

2019-06-10 Java学习日记之JQuery

什么是JQuery? JQuery是一个快速、简洁的javaScript框架,是继Prototype之后有一个优秀的javaScript代码库(或javaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档操作、事件处理、动画设...

weixin_34015566的博客 165

2019-06-10 学习日记 day31 JQ

JQ jQuery是一个快速,简洁的javascript框架,是继Prototype之后有一个优秀的javascript代码块(或javascript框架) jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装javascript常用的功能代码,提供一种简便的javascript设计模式,优化HTML文档的操作,时间处理,动画设计和Ajax...

weixin_30662849的博客 115

HTML和CSS初学日记

HTML笔记 块级别标签 作用:搭建网页的结构 特点:宽度默认占满父元素,高度默认由内容决定,宽高可以自定义 div 【容器】无意义的块元素(无招胜有招) h1~h6 标题 p 段落 ul>li 【容器】列表 ol>li 【容器】列表 dl>dd,dt 【容器】列表 <div class="content"&g...

weixin_45941601的博客 253

Spring——JavaWeb基础

1.基本概念 1.1 前置部分内容 浏览器页面渲染过程 浏览器页面渲染过程动画 (DNS解析,发送HTTP请求,TCPIP的三次握手确认连接,DOM构造,布局和绘制最终页面) DOM(Document Object model)是文档对象模型,就是把文档中的标签,属性,文本,转换成为对象来管理。 HTTP(hypertext transport protocol) 超文本传输协议,HTTP 协议中的数据又叫报文。。 布局按照从上到下,从左到右的顺序解析DOM的树,子树则嵌套进去。文档流排好之后,获取C

qq453660983的博客 775

SpringBoot+Vue纺织品企业财务管理系统设计与实现

企业财务管理系统的核心在于数据一致性与业务流程闭环,尤其在多批次、多属性的纺织行业中,传统Excel管理极易陷入数据混乱。基于RBAC权限模型与JWT无状态认证,系统能够实现多角色安全访问与动态菜单渲染,保障财务数据的合规性与可追溯性。SpringBoot提供高效的后端接口开发能力,Vue与Element UI则简化了复杂表单和交互页面的构建,两者结合已成为企业级Web应用的成熟技术范式。此类技术方案广泛适用于订单核算、应收应付管理、成本分摊及报表分析等场景,可有效提升财务处理效率。本文围绕一套纺织品企业财

weixin_30512965的博客 298

Java Web——jQuery中的过滤器与第一组函数(val、text、attr)

Java Web——jQuery中的过滤器与第一组函数(val、text、attr)

贝尔摩德苦艾酒 7751

JQuery中过滤选择器

语法: :header 获得标题(h1~h6)元素,固定写法。语法: :not(selector) 不包括指定内容的元素。语法: :first 获得选择的元素中的第一个元素。语法: :last 获得选择的元素中的最后一个元素。语法: :gt(index) 大于指定索引元素。语法: :lt(index) 小于指定索引元素。语法: :even 偶数,从 0 开始计数。语法: :eq(index) 指定索引元素。语法: :odd 奇数,从 0 开始计数。

you4580的专栏 495

jQuery JavaScript Library v1.10.2源码

/*! * jQuery JavaScript Library v1.10.2 * http://jquery.com/ * * Includes Sizzle.js * http://sizzlejs.com/ * * Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors * R...

weixin_30436101的博客 1263

jQuery过滤器和Filter

jQuery过滤器和Filter

bear_309的博客 1575

05-jquery基本过滤器

$(“选择器”).事件名称(事件的处理函数)$(“选择器”): 选择0或多个dom对象,并绑定事件。语法:$(:“选择器>option:selected”)语法: $ (“:checkbox:checked”)语法:$ (“:text:disabled”)语法:$ (“:text:enabled”)语法:$(“选择器:eq(下标)”)语法:$(“选择器:gt(下标)”)语法:$(“选择器:lt(下标)”)语法:$(“选择器:first”)语法:$(“选择器:last”)

伊甸园的博客 1057
上一篇: jQuery学习日记(一):jQuery 对象与 DOM 对象
下一篇: jQuery学习日记(三):常用的DOM操作
DevilPace
博客等级 码龄12年 7粉丝 7原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值