当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JQuery 学习笔记 选择器之二

Javascript
javascript 多图浏览超炫效果
对采用动态原型方式无法展示继承机制得思考
JS 控制非法字符的输入代码
JSON 编辑器实现代码
jquery select操作的日期联动实现代码
select列表内容交换的js实现代码
javascript Demo模态窗口
JavaScript 加号(+)运算符号
javascript 动态生成私有变量访问器
javascript 模拟JQuery的Ready方法实现并出现的问题
jquery ready函数源代码研究
ASP Json Parser修正版
js select多选列表传值代码
JavaScript 对象模型 执行模型
js 操作select相关方法函数
IE和firefox浏览器的event事件兼容性汇总
js event事件的传递与冒泡处理
兼容IE,firefox的获取节点的文本值的javascript代码
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
javascript Array.sort() 跨浏览器下需要考虑的问题

Javascript 中的 JQuery 学习笔记 选择器之二


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 307 ::
收藏到网摘: n/a

本章继续我们的JQuery选择器的学习旅程 首先照上一章一样,提供我学习用的例子

复制代码 代码如下:

<!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);