jQuery--选择器(基本选择器、层次选择器)详解

jQuery选择器

通过jQuery选择器可以方便快捷地获得页面中的元素,然后为其添加相应行为,无需担心浏览器的兼容性问题。jQuery选择器完全继承了CSS选择的风格,将jQuery选择器分为4类:基本选择器、层次选择器、过滤选择器和表单选择器。

基本选择器

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

选择器描述返回
#ID根据元素的ID进行匹配单个jQuery对象
.class根据元素的class属性进行匹配jQuery对象数组
element根据元素的标签名进行匹配jQuery对象数组
selector1,selectot2,…,selectorN将每个选择器匹配的结果合并后一起返回jQuery对象数组
*匹配页面的所有元素,包括html、head、body等jQuery对象数组

示例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>jQuery基本选择器</title>
		<script type="text/javascript" src="js/jquery-2.1.0.js" ></script>
	</head>
	<body>
		<div id="idDiv">idDIv</div>
		<div class="classDiv" style="border: 1px;">classDiv</div>
		<div class="classDiv">classDiv</div>
		<span class="classSpan">classSpan</span>
		<script type="text/javascript">
			$(function(){
				$("#idDiv").css("color","blue");
				$(".classDiv").css("background-color", "#dddddd");
				$("span").css("font-size", "40px");
				$("#idDiv,.classSpan").css("font-style","italic");
			});
		</script>
	</body>
</html>

在这里插入图片描述

层次选择器

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

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

示例:

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>jQuery层次选择器</title>
		<script type="text/javascript" src="js/jquery-2.1.0.js" ></script>
	</head>
	<body>
		<div>
			搜索条件<input name="search"/>
			<form>
				<label>用户名:</label>
				<input name="userName" />
				<fieldset>
					<label>密  码:</label>
					<input name="password" />
				</fieldset>
			</form>
			<hr />
			身份证号:<input name="none" /><br />
			联系电话:<input naem="none"/>
		</div>
		<script type="text/javascript">
			$(function(){
				//form下的所有input
				$("form input").css("width","200px");
				//form的直接子元素input
				$("form>input").css("background","pink");
				//紧邻label的input
				$("label+input").css("border-color","blue");
				//$("label").next("input").css("border-color","blue");
				//form之后相邻的input
				$("form~input").css("border-bottom-width","5px");
				//$("form").nextAll("input").css("border-bottom-width","4px");
				$("*").css("padding-top","10px");
			});
		</script>
	</body>
</html>

在这里插入图片描述

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值