jQuery选择器

基本选择器

基本选择器是jQuery中最常用的选择器,通过元素的id,className或tagName来查找页面中的元素

选择器描述返回
#ID根据元素的ID属性进行匹配单个jQuery对象
.class根据元素的class属性进行匹配jQuery对象数组
element根据元素的标签名进行匹配jQuery对象数组
selector1,selector2,···,selectorN将每个选择器匹配的结果合并后一起返回jQuery对象数组
*匹配页面的所有元素,包括html、head、body等jQuery对象数组
<!doctype html>
<html>
	<head>
		<meta charset="utf-8">
		<title>jQuery基本选择器</title>
		<script type="text/javascript" src="js/jquery-1.x.js"></script>
	</head>
	<body>
		<div id="idDiv">DOM对象与jQuery对象的相互转化</div>
		<div class="classDiv">jQuery对象不能直接使用DOM对象后方法,</div>
		<div class="classDIv">但可以通过将jQuery对象转换成jQuery对象后再调用其它方法。</div>
		<span class="classSpan">基本选择器是jQuery中最常用的选择器</span>
		<script type="text/javascript">
			$(function(e){
				$("#idDiv").css("color","blue");
				$(".classDiv").css("background-color","#ddd");
				$("span").css("background-color","gray").css("color","white");
				$("*").css("font-size","20px");
				$("#idDiv,.classSpan").css("font-family","italic");
			});
		</script>
	</body>
</html>

层次选择器

jQuery层次选择器是通过DOM对象的层次关系来获取特定的元素,如同辈元素、后代元素、子元素和相邻元素等。层次选择器的用法和基本选择器类似,也是使用$()函数来实现,返回结果均为jQuery对象数组:

选择器描述返回
$(“ancestor descendant”)选取ancestor元素中的所有子元素jQuery对象数组
$(“parent > child”)选取parent元素中的直接子元素jQuery对象数组
$(“prev+next”)选取紧邻prev元素之后的next元素jQuery对象数组
$(“prev~sibilings”)选取prev元素之后的siblings兄弟元素jQuery对象数组

过滤选择器

  1. 简单过滤选择器
    简单过滤选择器是过滤选择器中用的最多的一种,过滤规则主要体现在元素的位置上或一些特定的元素上,书写时均以冒号(:)开头:
选择器描述返回
:first选取第一个元素单个jQuery对象
:last选取最后一个元素单个jQuery对象
:even选取所有索引值为偶数的元素,索引从0开始jQuery对象数组
:odd选取所有索引值为奇数的元素,索引从0开始jQuery对象数组
:header选取所有标题元素,如h1,h2,h3等jQuery对象数组
:focus选取当前获取焦点的元素(1.6+版本)jQuery对象数组
:root选取文档的根元素(1.9+版本)单个jQuery对象
:aninated选取所有正在执行动画效果的元素jQuery对象数组
:eq(index)选取索引等于index的元素,索引从0开始单个jQuery对象
:gt(index)选取索引大于index的元素,索引从0开始jQuery对象数组
:lt(index)选取索引小于index的元素,索引从0开始jQuery对象数组
:not(selector)选择selector以外的元素jQuery对象数组
  1. 内容过滤选择器
    内容过滤选择器是指根据元素的文字内容或所包含的子元素的特征进行多虑的选择器
选择器描述返回
:contains(text)选取包含text内容的元素jQuery对象数组
:has(selector)选取含有selector多匹配的元素jQuery对象数组
:empty选取所有不包含文本或者子元素的空元素jQuery对象数组
:parent选取含有子元素或文本的元素jQuery对象数组
  1. 可见性过滤选择器
    可见性过滤选择器是值根据元素的可见性来筛选元素的选择器
选择器描述返回
:hidden选取所有的不可见元素,或者type为hidden的元素jQuery对象数组
:visible选取所有的可见元素jQuery对象数组
  1. 属性过滤选择器
    属性过滤选择器是指根据元素的属性来筛选元素的选择器,在属性匹配时以“[”开始、以“]”结束
选择器描述返回
[attribute]选取包含给定属性的元素jQuery对象数组
[attribute = value]选取属性等于某个特定值的元素jQuery对象数组
[attribute != value]选取属性不等于或不包含某个特定值的元素jQuery对象数组
[attribute ^= value]选取属性以某个值开始的元素jQuery对象数组
[attribute $= value]选取属性以某个值结尾的元素jQuery对象数组
[attribute *= value]选取属性中包含某个值的元素jQuery对象数组
[attribute1][attribute2][attribute3]复合属性选择器,需要同时满足多个条件时使用jQuery对象数组
  1. 子元素过滤选择器
    在页面设计过程中需要突出某些行时,可以通过基本过滤选择器中的:eq()来实现单表中行的凸显,但不能同时让多个表具有相同的效果。在jQuery中,子元素过滤选择器可以轻松地选取所有父元素中的指定元素,并进行处理
选择器描述返回
:first-child选取每个父元素中的第一个子元素jQuery对象数组
:last-child选取每个父元素中的最后一个元素jQuery对象数组
:only-child当父元素只有一个子元素时,进行匹配。否则不匹配jQuery对象数组
:nth-child(N\odd\even)选取每个父元素中的第N个子元素或奇偶元素jQuery对象数组
:first-of-type选取每个父元素中的第一个元素(1.9+版本)jQuery对象数组
:last-of-type选取每个父元素中的最后一个元素(1.9+版本)jQuery对象数组
:only-of-type当父元素只有一个子元素时匹配,否则不匹配(1.9+版本)jQuery对象数组

其中,在:nth-child(N|odd|even)选择器中,元素的下标从1开始。当参数为N为整数时,表示选择集合中的第N个元素;当参数为odd时,表示选取集合中所有下标为奇数的元素;当参数为even时,表示选择集合中所有下标为偶数的元素;当参数为an+b形式时,表示从第b个开始,每隔a个选取一个,例如,3n+2表示从第2个开始每隔3个选取一个。

  1. 表单对象属性过滤选择器
    表单对象属性过滤选择器是指通过表单对象的属性特征进行筛选的选择器
选择器描述返回
:enabled选取表单中属性为可用的元素jQuery对象数组
:disabled选取表单中属性为不可用的元素jQuery对象数组
:checked选择表单中被选择中的元素(单选按钮、复选框)jQuery对象数组
:selected选取表单中被选中的选项元素(下拉列表)jQuery对象数组

表单选择器

表单在web前端开发中占据重要的地位,在jQuery中引入的表单选择器能够让用户更加方便的处理表单数据。通过表单选择器可以快速定位到某类表单对象

选择器描述返回
:input选取所有的< input>、< textarea> 、< select>、< button>元素jQuery对象数组
:text选取所有的单行文本框jQuery对象数组
:password选取所有的密码框jQuery对象数组
:radio选取所有的单选框jQuery对象数组
:checkbox选取所有的多选框jQuery对象数组
:submit选取所有的提交按钮jQuery对象数组
:image选取所有的图片按钮jQuery对象数组
:button选取所有的按钮jQuery对象数组
:file选取所有的文件域jQuery对象数组
:hidden选取所有的不可见元素jQuery对象数组
飞思卡尔智能车竞赛是一项备受关注的科技赛事,旨在激发学生的创新和实践能力,尤其是在嵌入式系统、自动控制和机器人技术等关键领域。其中的“电磁组”要求参赛队伍设计并搭建一辆能够自主导航的智能车,通过电磁感应线圈感知赛道路径。本压缩包文件提供了一套完整的电磁组智能车程序,这是一套经过实战验证的代码,曾在校级比赛中获得第二名的优异成绩。 该程序的核心内容可能涉及以下关键知识点: 传感器处理:文件名“4sensor”表明车辆配备了四个传感器,用于获取环境信息。这些传感器很可能是电磁感应传感器,用于探测赛道上的导电线圈。通过分析传感器信号的变化,车辆能够判断自身的行驶方向和位置。 数据采集与滤波:在实际运行中,传感器读数可能受到噪声干扰,因此需要进行数据滤波以提高精度。常见的滤波算法包括低通滤波、高斯滤波和滑动平均滤波等,以确保车辆对赛道的判断准确无误。 路径规划:车辆需要根据传感器输入实时规划行驶路径。这可能涉及PID(比例-积分-微分)控制、模糊逻辑控制或其他现代控制理论方法,从而确保车辆能够稳定且快速地沿赛道行驶。 电机控制:智能车的驱动通常依赖于直流电机或无刷电机,电机控制是关键环节。程序中可能包含电机速度和方向的调节算法,如PWM(脉宽调制)控制,以实现精准的运动控制。 嵌入式系统编程:飞思卡尔智能车的控制器可能基于飞思卡尔微处理器(例如MC9S12系列)。编程语言通常为C或C++,需要掌握微控制器的中断系统、定时器和串行通信等功能。 软件架构:智能车软件通常具有清晰的架构,包括任务调度、中断服务程序和主循环等。理解和优化这一架构对于提升整体性能至关重要。 调试与优化:程序能够在比赛中取得好成绩,说明经过了反复的调试和优化。这可能涉及代码效率提升、故障排查以及性能瓶颈的识别和解决。 团队协作与版本控制:在项目开发过程中,团队协作和版本控制工具(如Git)的应用不可或缺,能够保
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值