JQuery 学习笔记 选择器之二


Posted in Javascript onJuly 23, 2009
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>无标题文档</title> 
<script src="js/jquery-1.3.2.js" ></script> 
<script type="text/javascript"><!-- 
$(function(){ 
$("#aDescendant").click(function(){ 
$("#Result").html(""); 
$("#div1 ul").each(function(){ 
$("#Result").html($("#Result").html() + $(this).html() + "," ); 
}) 
}) 
$("#aChild").click(function(){ 
$("#Result").html(""); 
$("#div1 > li").each(function(){ 
$("#Result").html($("#Result").html() + $(this).attr("id") + "," ); 
}) 
}) 
$("#aNext").click(function(){ 
$("#Result").html(""); 
$("label + input").each(function(){ 
$("#Result").html($("#Result").html() + $(this).attr("value") + ","); 
}) 
}) 
$("#aSibling").click(function(){ 
$("#Result").html(""); 
$("#input1 ~ label").each(function(){ 
$("#Result").html($("#Result").html() + $(this).html() + ","); 
}) 
}) 
}) 
// --></script> 
</head> <body> 
<div id="div1"> 
<li id="l1"> 
<ul>1</ul> 
<ul>2</ul> 
<ul>3</ul> 
<ul>4</ul> 
</li> 
<li id="l2"> 
<ul>一</ul> 
<ul>二</ul> 
<ul>三</ul> 
<ul>四</ul> 
</li> 
<label>Label1</label> 
<input id="input1" value="input1" /> 
<input /> 
<label>Label2</label> 
<label>Label4</label> 
</div> 
<div> 
<label>Label3</label> 
<div style="border:1px solid #000" ></div> 
<input id="input2" value="input2"/> 
</div> 
<label>Label4</label><br /> 
<a href="#" id="aDescendant">显示DIV的后序结点ID</a> 
<a href="#" id="aChild">显示DIV的子LI结点</a> 
<a href="#" id="aNext">显示位于Label下一个input元素的value值</a> 
<a href="#" id="aSibling">显示于input1元素同级的label元素内容</a> 
<br /> 
Result: 
<br /> 
<div id="Result"> 
</div> 
</body> 
</html>

先对上面代码中的课外知识点说明下
1.element.attr("attributeName")
描述:此方法用户获取某element元素的某个属性值,如例子中
$("#div1 > li").each(function(){
$("#Result").html($("#Result").html() + $(this).attr("id") + "," );
})
功能就是获取当前遍历到的element对象的id值;
好了,现在开始来介绍本章的内容吧。本章主要讲的就是JQuery里如果去选择某个结点的子结点、兄弟结点等,不浪费时间啦,哈,现在进入正题
1.$("Selector descendant")
描述:此方法主要用于获取“Selector”选择器(注:此选择器为上一章讲的几个的任意一种)选择的Element对象或集合的子孙结点,就像例子中
$("#aDescendant").click(function(){
$("#Result").html("");
$("#div1 ul").each(function(){
$("#Result").html($("#Result").html() + $(this).html() + "," );
})
})
功能就是获取id为div1元素的子孙节点里"ul"节点的HTMl内容,若“Selector”选择器返回的是个集合,则获取的子孙结点就是这个集合里,每个element匹配的子孙节点的集合
返回值:Array(Element);
2.$("Selector>child")
描述:此方法与上一个方法类似,主要区别就是上个方法能获取所有的子孙节点,而这方法只能获取奇直属的子节点(多个“>”号就代表是直属的嘛^^),在此就不多说了,哈,其它都跟上一个一样
返回值:Array(Element);
3.$("Selector + next")
描述:用于获取所有位于Selector后面的next元素,如例子中
$("#aNext").click(function(){
$("#Result").html("");
$("label + input").each(function(){
$("#Result").html($("#Result").html() + $(this).attr("value") + ",");
})
})
获取所有位于label元素后面的input元素,在例子中,只有input1位于Label1下个节点,input2与Label3两者隔了个div节点,所以不配合。
返回值:Array(Element);
4.$("Selector ~ Sibling")
描述:与上一个方法类似,主要区别是此方法匹配的是位于Selector之后的所有同级的Sibling结点,无论中间是否有隔其它结点,在这也不明说啦,呵
返回值:Array(Element);
Javascript 相关文章推荐
JavaScript高级程序设计 阅读笔记(十七) js事件
Aug 14 Javascript
Javascript中innerHTML用法实例分析
Jan 12 Javascript
jquery实现树形菜单完整代码
Dec 29 Javascript
一道常被人轻视的web前端常见面试题(JS)
Feb 15 Javascript
location.hash保存页面状态的技巧
Apr 28 Javascript
javascript中异常处理案例(推荐)
Oct 03 Javascript
微信小程序实现图片自适应(支持多图)
Jan 25 Javascript
vue货币过滤器的实现方法
Apr 01 Javascript
为什么说JavaScript预解释是一种毫无节操的机制详析
Nov 18 Javascript
基于js实现数组相邻元素上移下移
May 19 Javascript
angular共享依赖的解决方案分享
Oct 15 Javascript
vue3.0搭配.net core实现文件上传组件
Oct 29 Javascript
JQuery 学习笔记 选择器之一
Jul 23 #Javascript
javascript IFrame 强制刷新代码
Jul 23 #Javascript
jQuery TextBox自动完成条
Jul 22 #Javascript
JavaScript 动态生成方法的例子
Jul 22 #Javascript
模仿jQuery each函数的链式调用
Jul 22 #Javascript
js 代码集(学习js的朋友可以看下)
Jul 22 #Javascript
javascript Base类 包含基本的方法
Jul 22 #Javascript
You might like
实现分十页分向前十页向后十页的处理
2006/10/09 PHP
经典的PHPer为什么被认为是草根?
2007/04/02 PHP
thinkphp验证码的实现(form、ajax实现验证)
2016/07/28 PHP
php提交表单时保留多个空格及换行的文本样式的方法
2017/06/20 PHP
PHP中单例模式的使用场景与使用方法讲解
2019/03/18 PHP
更正确的asp冒泡排序
2007/05/24 Javascript
浅谈javascript六种数据类型以及特殊注意点
2013/12/20 Javascript
JS小游戏之宇宙战机源码详解
2014/09/25 Javascript
js控制输入框获得和失去焦点时状态显示的方法
2015/01/30 Javascript
js控制多图左右滚动切换效果代码分享
2015/08/26 Javascript
js简单判断flash是否加载完成的方法
2016/06/21 Javascript
bootstrapValidator自定验证方法写法
2016/12/01 Javascript
BootStrap Table 获取同行不同列元素的方法
2016/12/19 Javascript
Three.js利用dat.GUI如何简化试验流程详解
2017/09/26 Javascript
本地搭建微信小程序服务器的实现方法
2017/10/27 Javascript
基于webpack-hot-middleware热加载相关错误的解决方法
2018/02/22 Javascript
JavaScript实现网页下拉菜单效果
2020/11/20 Javascript
python生成器的使用方法
2013/11/21 Python
Python中用Spark模块的使用教程
2015/04/13 Python
搭建Python的Django框架环境并建立和运行第一个App的教程
2016/07/02 Python
python生成1行四列全2矩阵的方法
2018/08/04 Python
python 命令行传入参数实现解析
2019/08/30 Python
python实现代码统计程序
2019/09/19 Python
Python3.x+迅雷x 自动下载高分电影的实现方法
2020/01/12 Python
Keras 切换后端方式(Theano和TensorFlow)
2020/06/19 Python
Django模板报TemplateDoesNotExist异常(亲测可行)
2020/12/18 Python
HTML5新增的8类INPUT输入类型介绍
2015/07/06 HTML / CSS
不可轻视HTML5!App三年内将被html5顶替彻底消失
2015/11/18 HTML / CSS
Traffic People官网:女式花裙、上衣和连身裤
2020/10/12 全球购物
学生打架检讨书大全
2014/01/23 职场文书
社区活动总结报告
2014/05/05 职场文书
个人公司授权委托书范本
2014/10/12 职场文书
2014年银行员工工作总结
2014/11/12 职场文书
退休欢送会主持词
2015/07/01 职场文书
个人的事迹材料怎么写
2019/04/24 职场文书
2019年鼓励无偿献血倡议书
2019/09/17 职场文书