jQuery常用的查找Dom元素方法
废话不多说,先来个总结,然后下面是demo
一. 同级节点之间的检索(检索深度N=0)
next()是在兄弟节点中,往后匹配;
prev()是在兄弟节点中,往前匹配。
二. 父级/子级节点的检索(检索深度N=1)
children()是在子节点中,往后匹配。
parent()是在父节点中,往前匹配。
ps:请注意了---子节点和父节点都是相邻的,深度为1的节点,也就是标题提到的检索深度为1
三. 后代节点的检索(检索深度N>=1)
find()检索的是子代元素和后代元素,不会检索兄弟节点。
parents() 检索的是祖辈元素(包括父元素)的集合。
closest()检索的是最近的祖辈元素(一个)
ps:当往上级检索节点的时候,推荐使用closet,效率更高!
四. demo
HTML代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
</head>
<body>
<div class="out" id="t1">
<div class="level1" id="t2">
<span class="title1" id="t3"></span><span class="title2" id="t4"></span>
</div>
<ul class="menu" id="t6">
<li class="item1" id="t7"></li>
<span class="item2" id="t8"></span>
<li class="item3" id="t9"></li>
</ul> <div class="level1" id="t10">
<span class="title1" id="t11"></span><span class="title2" id="t12"></span>
</div>
<ul class="menu" id="t14">
<span class="item1" id="t15"></span>
<li class="item2" id="t16"></li>
<span class="item3" id="t17"></span>
</ul>
</div>
</body>
</html>
JS测试代码如下:
<script type="text/javascript" src="../js/lib/jquery-1.8.0.min.js"></script>
<script type="text/javascript">
$(function () {
testNext();
testChildren();
testFind();
testPre();
testParent();
}); //测试next。
function testNext() {
var $result = $(".level1").next("ul");
console.info(getTagsInfo($result)); //结果是:["UL#t6", "UL#t14"]
} //测试Children
function testChildren() {
var $result = $(".level1").children("span");
console.info(getTagsInfo($result));//结果是:["SPAN#t3", "SPAN#t4", "SPAN#t11", "SPAN#t12"]
} //测试Find
function testFind() {
var $result = $(".out").find("span");
console.info(getTagsInfo($result));//结果是: ["SPAN#t3", "SPAN#t4", "SPAN#t8", "SPAN#t11", "SPAN#t12", "SPAN#t15", "SPAN#t17"]
} //pre是next的方面,检索的是同级元素。
function testPre() {
var $result = $("#t12").prev("span");
console.info(getTagsInfo($result));//结果是:["SPAN#t11"]
} //parent是和children相对的,检索的上一级别的父元素
function testParent() {
var $result = $(".title1").parent("div");
console.info(getTagsInfo($result));//结果是:["DIV#t2", "DIV#t10"]
} //输出匹配到的元素的id
function getTagsInfo($doms) {
return $doms.map(function () {
return this.nodeName + "#" + this.id;
}).get();
}
</script>
相关源代码:http://yunpan.cn/c3eL2PdJiqMZ3 访问密码 47eb
jQuery常用的查找Dom元素方法的更多相关文章
- JQUERY选择和操作DOM元素(利用正则表达式的方法匹配字符串中的一部分)
JQUERY选择和操作DOM元素(利用正则表达式的方法匹配字符串中的一部分) 1.匹配属性的开头 $("[attributeName^='value']"); 2.匹配属性的结尾 ...
- jQuery DOM 元素方法(get)
jQuery DOM 元素方法 1..get() 获得由选择器指定的 DOM 元素. $(selector).get(index)index 可选.规定获取哪个匹配元素(通过 index 编号). 实 ...
- Jsoup(二)-- Jsoup查找DOM元素
一.Jsoup查找DOM元素的方法 getElementById(String id) 根据id 来查询DOM getElementsByTag(String tagName) 根据tag 名称来查询 ...
- (三)Jsoup 使用选择器语法查找 DOM 元素
第一节: Jsoup 使用选择器语法查找 DOM 元素 Jsoup使用选择器语法查找DOM元素 我们前面通过标签名,Id,Class样式等来搜索DOM,这些是不能满足实际开发需求的, 很多时候我们需要 ...
- (二)Jsoup 查找 DOM 元素
第一节: Jsoup 查找 DOM 元素 getElementById(String id) 根据 id 来查询 DOM getElementsByTag(String tagName) 根据 tag ...
- Jquery 方式获取 iframe Dom元素
Jquery 方式获取 iframe Dom元素 測试页面代码: <html> <head> <title>jquery方式,訪问iframe页面dom元素& ...
- JS1 js获取dom元素方法
js获取dom元素方法 1.通过ID选取元素(getElementById) 1)使用方法:document.getElementById("domId") 其 ...
- jQuery DOM 元素方法 - index() 方法
元素的 index,相对于选择器 获得元素相对于选择器的 index 位置. 该元素可以通过 DOM 元素或 jQuery 选择器来指定. 语法 $(selector).index(element) ...
- jQuery DOM 元素方法 (十)
函数 描述 .get() 获得由选择器指定的 DOM 元素. .index() 返回指定元素相对于其他指定元素的 index 位置. .size() 返回被 jQuery 选择器匹配的元素的数量. . ...
随机推荐
- 多项目中SVN权限管理精辟解析
本节和大家讨论一下多项目SVN权限管理,主要包括建立版本库,修改版本库配置文件,配置允许访问的用户,设置用户访问权限.下面我们就来看一下SVN权限管理.svn权限管理svn的权限管理涉及到一下文件:p ...
- mxml日期显示使用
mxml代码: <?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx= ...
- centos主机信任
一.实现原理 使用一种被称为"公私钥"认证的方式来进行ssh登录."公私钥"认证方式简单的解释是: 首先在客户端上创建一对公私钥(公钥文件:~/.ssh/id_ ...
- C#获取本机局域网ip和公网ip
1.获取局域网ip IPAddress ipAddr = Dns.Resolve(Dns.GetHostName()).AddressList[0];//获得当前IP地址 string ip=ipAd ...
- POI获取Excel列数和行数的方法
//获取指定行,索引从0开始 hssfRow=hssfSheet.getRow(1); //获取指定列,索引从0开始 hssfCell=hssfRow.getCell((short)6);//获取总行 ...
- php 大转盘抽奖
包在文件中 lottery.zip <!DOCTYPE HTML><html><head><meta charset="utf-8"> ...
- Swift & OC 混编 浅析
转载自:http://www.infoq.com/cn/articles/wangyi-cartoon-swift-mixed-practice?utm_campaign=rightbar_v2&am ...
- 实战WEB 服务器(JAVA编写WEB服务器)
实战WEB 服务器(JAVA编写WEB服务器) 标签: web服务服务器javawebsockethttp服务器 2010-04-21 17:09 11631人阅读 评论(24) 收藏 举报 分类: ...
- Office2003/2010等集成SP的简单方法
Office2003集成SP的简单方法 需要准备的工具:Office 2003 光盘镜像.SP3更新包.Office 2003 序列号.UltraISO,7-zip或winrar,虚拟光驱 步骤一:提 ...
- linux 显示文件或文件夹
用 -v 很简单呀! 显示文件 ls -l | grep -v '^d'显示目录 ls -l | grep '^d'