children()方法

jQuery是一个合集对象,如果想快速查找合集里面的第一级子元素,此时可以用children()方法。这里需要注意:.children(selector) 方法是返回匹配元素集合中每个元素的所有子元素(仅儿子辈,这里可以理解为就是父亲-儿子的关系)

节点查找关系

  • 1

代码如果是$("div").children(),那么意味着只能找到ul,因为div与ul是父子关系,li与div是祖辈关系,因此无法找到

children()无参数

允许通过在DOM树中对这些元素的直接子元素进行搜索,并且构造一个新的匹配元素的jQuery对象

注意:jQuery是一个合集对象,所以通过children匹配合集中每一个元素的第一级子元素

.children()方法选择性地接受同一类型选择器表达式

$("div").children(".selected")

同样的也是因为jQuery是合集对象,可能需要对这个合集对象进行一定的筛选,找出目标元素,所以允许传一个选择器的表达式

find()方法

jQuery是一个合集对象,如果想快速查找DOM树中的这些元素的后代元素,此时可以用find()方法,这也是开发使用频率很高的方法。这里要注意 children与find方法的区别,children是父子关系查找,find是后代关系(包含父子关系)

节点查找关系

  • 1

代码如果是$("div").find("li"),此时,li与div是祖辈关系,通过find方法就可以快速的查找到

.find()方法要注意的知识点

find是遍历当前元素集合中每个元素的后代。只要符合,不管是儿子辈,孙子辈都可以

与其他的树遍历方法不同,选择器表达式对于 .find() 是必需的参数。如果我们需要实现对所有后代元素的取回,可以传递通配选择器 '*'

find只在后代中遍历,不包括自己

选择器 context 是由 .find() 方法实现的;因此,$('.item-ii').find('li') 等价于 $('li', '.item-ii')(找到类名为item-ii的标签下的li标签)

注意重点

.find()和.children()方法是相似的

children只查找第一级的子节点

find查找范围包括子节点的所有后代节点

parent()方法

jQuery是一个合集对象,如果想快速查找合集里面的每一个元素的父元素(这里可以理解为就是父亲-儿子的关系),此时可以用parent()方法;因为是父元素,这个方法只会向上查找一级

节点查找关系

  • 1

// 查找ul的父元素div, $(ul).parent()

parent()无参数

parent()方法允许我们能够在DOM树中搜索到这些元素的父级元素,从有序的向上匹配元素,并根据匹配的元素创建一个新的 jQuery 对象

注意:jQuery是一个合集对象,所以通过parent是匹配合集中每一个元素的父元素

parent()方法选择性地接受同一型选择器表达式

同样的也是因为jQuery是合集对象,可能需要对这个合集对象进行一定的筛选,找出目标元素,所以允许传一个选择器的表达式

parents()方法

jQuery是一个合集对象,如果想快速查找合集里面的每一个元素的所有祖辈元素,此时可以用parents()方法

其实也类似find与children的区别,parent只会查找一级,parents则会往上一直查到查找到祖先节点

节点查找关系

  • 1

// 在li节点上找到祖辈元素div,用$("li").parents()方法

parents()无参数

parents()方法允许我们能够在DOM树中搜索到这些元素的祖先元素,从有序的向上匹配元素,并根据匹配的元素创建一个新的 jQuery 对象;返回的元素秩序是从离他们最近的父级元素开始的

注意:jQuery是一个合集对象,所以通过parent是匹配合集中所有元素的祖辈元素

parents()方法选择性地接受同一型选择器表达式

同样的也是因为jQuery是合集对象,可能需要对这个合集对象进行一定的筛选,找出目标元素,所以允许传一个选择器的表达式

注意事项

.parents()和.parent()方法是相似的,但后者只是进行了一个单级的DOM树查找

$( "html" ).parent()方法返回一个包含document的集合,而$( "html" ).parents()返回一个空集合。

closest()方法

以选定的元素为中心,往内查找可以通过find、children方法。如果往上查找,也就是查找当前元素的父辈祖辈元素,jQuery提供了closest()方法,这个方法类似parents但是又有一些细微的区别,属于使用频率很高的方法

closest()方法接受一个匹配元素的选择器字符串

从元素本身开始,在DOM 树上逐级向上级元素匹配,并返回最先匹配的祖先元素

// 在div元素中,往上查找所有的li元素,可以这样表达

$("div").closet("li')

注意:jQuery是一个合集对象,所以通过closest是匹配合集中每一个元素的祖先元素

closest()方法给定的jQuery集合或元素来过滤元素

同样的也是因为jQuery是合集对象,可能需要对这个合集对象进行一定的筛选,找出目标元素,所以允许传一个jQuery的对象

注意事项

起始位置不同:.closest开始于当前元素 .parents开始于父元素

遍历的目标不同:.closest要找到指定的目标,.parents遍历到文档根元素,closest向上查找,直到找到一个匹配的就停止查找,parents一直查找到根元素,并将匹配的元素加入集合

结果不同:.closest返回的是包含零个或一个元素的jquery对象,parents返回的是包含零个或一个或多个元素的jquery对象

next()方法

jQuery是一个合集对象,如果想快速查找指定元素集合中每一个元素紧邻的后面同辈元素的元素集合,此时可以用next()方法

节点查找关系

//如下的class="item-2"就是class="item-1"的兄弟元素

  • 1
  • 2
  • 3

next()无参数

允许我们找遍元素集合中紧跟着这些元素的直接兄弟元素,并根据匹配的元素创建一个新的 jQuery 对象。

注意:jQuery是一个合集对象,所以通过next匹配合集中每一个元素的下一个兄弟元素

next()方法选择性地接受同一类型选择器表达式

同样的也是因为jQuery是合集对象,可能需要对这个合集对象进行一定的筛选,找出目标元素,所以允许传一个选择器的表达式

prev()方法

jQuery是一个合集对象,如果想快速查找指定元素集合中每一个元素紧邻的前面同辈元素的元素集合,此时可以用prev()方法

节点查找关系

如下的class="item-1"节点就是class="item-2"的li元素的prev兄弟节点

  • 1
  • 2
  • 3

prev()无参数

取得一个包含匹配的元素集合中每一个元素紧邻的前一个同辈元素的元素集合

注意:jQuery是一个合集对象,所以通过prev是匹配合集中每一个元素的上一个兄弟元素

prev()方法选择性地接受同一类型选择器表达式

同样的也是因为jQuery是合集对象,可能需要对这个合集对象进行一定的筛选,找出目标元素,所以允许传一个选择器的表达式

siblings()

jQuery是一个合集对象,如果想快速查找指定元素集合中每一个元素的同辈元素,此时可以用siblings()方法

节点查找关系

如下是class="item-1"和class="item-3"就是class="item-2"的siblings兄弟节点

  • 1
  • 2
  • 3

siblings()无参数

取得一个包含匹配的元素集合中每一个元素的同辈元素的元素集合

注意:jQuery是一个合集对象,所以通过siblings是匹配合集中每一个元素的同辈元素

siblings()方法选择性地接受同一类型选择器表达式

同样的也是因为jQuery是合集对象,可能需要对这个合集对象进行一定的筛选,找出目标元素,所以允许传一个选择器的表达式

add()方法

jQuery是一个合集对象,通过$()方法找到指定的元素合集后可以进行一系列的操作。$()之后就意味着这个合集对象已经是确定的,如果后期需要再往这个合集中添加一新的元素要如何处理?jQuery为此提供add方法,用来创建一个新的jQuery对象 ,元素添加到匹配的元素集合中

.add()的参数可以几乎接受任何的$(),包括一个jQuery选择器表达式,DOM元素,或HTML片段引用

//操作:选择所有的li元素,之后把p元素也加入到li的合集中

  • list item 1
  • list item 3

新的p元素

// 处理一:传递选择器

$('li').add('p')

// 处理二:传递dom元素

$('li').add(document.getElementsByTagName('p')[0])

// 动态创建P标签加入到合集,然后插入到指定的位置,但是这样就改变元素的本身的排列了

$('li').add('

新的p元素

').appendTo(目标位置)

each()

jQuery是一个合集对象,通过$()方法找到指定的元素合集后可以进行一系列的操作

如操作$("li").css('') 给所有的li设置style值,因为jQuery是一个合集对象,所以css方法内部就必须封装一个遍历的方法,被称为隐式迭代的过程。要一个一个给合集中每一个li设置颜色,这里方法就是each

.each() 方法就是一个for循环的迭代器,它会迭代jQuery对象合集中的每一个DOM元素。每次回调函数执行时,会传递当前循环次数作为参数(从0开始计数)

三个重点

each是一个for循环的包装迭代器

each通过回调的方式处理,并且会有2个固定的实参,索引与元素

each回调方法中的this指向当前迭代的dom元素

实例:

  • 克利夫兰骑士
  • LeBorn James

开始迭代li,循环2次

$("li").each(function(index, element) {

index 索引 0,1

element是对应的li节点 li,li

this 指向的是li

})

.left {

width: auto;

height: 150px;

}

.left div {

width: 150px;

height: 120px;

padding: 5px;

margin: 5px;

float: left;

background: #bbffaa;

border: 1px solid #ccc;

}

each方法

  • list item 1
  • list item 2
  • list item 3
  • list item 4
  • list item 5
  • list item 6

点击:each方法遍历元素

点击:each方法回调判断

$("button:first").click(function() {

//遍历所有的li

//修改每个li内的字体颜色

$("li").each(function(index, element) {

$(this).css('color','red')

})

})

$("button:last").click(function() {

//遍历所有的li

//修改偶数li内的字体颜色

$("li").each(function(index, element) {

if (index % 2) {

$(this).css('color','blue')

}

})

})

java dom遍历_jQuery DOM节点的遍历相关推荐

  1. resultset不支持循环遍历_二叉树的各种遍历方法的简单解释

    二叉树顾名思义,最多两个孩子. 一般规定一个二叉树,因为节点间有相互连接的原因,所以只要给定根节点,那么顺着寻找左孩子和右孩子便可以遍历到所有的节点,这就是遍历的直观解释. 而遍历分为深度遍历和广度遍 ...

  2. tree traversal (树的遍历) - postorder traversal (后序遍历)

    tree traversal (树的遍历) - postorder traversal (后序遍历) 1. tree traversal - 树的遍历 二叉树的遍历 (traversing binar ...

  3. tree traversal (树的遍历) - inorder traversal (中序遍历)

    tree traversal (树的遍历) - inorder traversal (中序遍历) 1. tree traversal - 树的遍历 二叉树的遍历 (traversing binary ...

  4. java使用org.w3c.dom解析XML文档,创建、增删查改,保存,读取,遍历元素等操作

    全栈工程师开发手册 (作者:栾鹏) java教程全解 java使用org.w3c.dom(java dom)解析XML文档,创建.增删查改,保存,读取,遍历元素等操作 在保存文件时需要载入crimso ...

  5. DOM深入学习 --- DOM 树介绍,如何遍历 DOM 树节点(一)

    DOM 树 HTML 文档的主干是标签(tag). 根据文档对象模型(DOM),每个 HTML 标签都是一个对象.嵌套的标签是闭合标签的"子标签(children)".标签内的文本 ...

  6. DOM系列:DOM树和遍历DOM

    上一节,咱们整理了DOM系列中的第一篇,主要介绍浏览器与DOM相关的知识.从标题中我们可以看出来,今天所要学的东西包含两个部分,第一部分是DOM树,第二部分是遍历DOM.如果你和我一样对于DOM树和遍 ...

  7. java 遍历xml子节点,Axiom解析XML,axiomxml,1、遍历XML全部节点,

    Axiom解析XML,axiomxml,1.遍历XML全部节点, 1.遍历XML全部节点,将节点放入Map返回2.遍历XML当前父节点下的所有子节点 [Java]代码import java.util. ...

  8. 二叉树 Java 实现 前序遍历 中序遍历 后序遍历 层级遍历 获取叶节点 宽度 ,高度,队列实现二叉树遍历 求二叉树的最大距离...

    数据结构中一直对二叉树不是很了解,今天趁着这个时间整理一下 许多实际问题抽象出来的数据结构往往是二叉树的形式,即使是一般的树也能简单地转换为二叉树,而且二叉树的存储结构及其算法都较为简单,因此二叉树显 ...

  9. Java之XML解析-使用dom(org.w3c.dom)解析XML

    转自: Java之XML解析-使用dom(org.w3c.dom)解析XML 下文笔者将讲述使用W3C(org.w3c.dom)提供的接口,解析XML文档的方法分享 W3C解析xml文档的方法:将整个 ...

最新文章

  1. NOIP2018TG 初赛复习
  2. 【ACM】杭电OJ 5055(Bob and math problem)
  3. C语言打印等腰三角形
  4. 闪耀澳网 跨界新品泸州老窖国窖1573澳网冠军版发布
  5. 《系统集成项目管理工程师》必背100个知识点-24变更的常见原因
  6. 64 大小_32位和64位Windows系统差别在哪里
  7. PG奥斯卡!云数据库专属集群MyBase荣获2020 PG亚洲大会“年度最佳产品奖”
  8. C#高级技师语法,你会吗?
  9. 使用Zipkin和Sleuth进行SpringBoot微服务跟踪
  10. 统计HDFS文件数量,大小,以及在某范围大小的文件数量
  11. Android 将整形颜色值转换成String类型
  12. python写一个路径选择app_django下创建多个app并设置urls方法
  13. r语言 array c函数,R语言 数组
  14. LeetCode:安排工作以达到最大收益【455】
  15. 黑盒测试和白盒测试之间的差别
  16. 给Debian浏览器安装flash播放插件
  17. 第五章 线性回归 学习笔记下
  18. 分组 php库,纯真ip数据库查询的php实现(补充分组查询)
  19. 找不到org.springframework.cloud.util.PropertyUtils
  20. 免费的ftp服务器 linux,免费ftp服务器,3款免费ftp服务器推荐

热门文章

  1. lulu-ui日期选择器-周选择封装
  2. Windows软件卸载不干净或异常导致无法重装的解决方案
  3. 逗比是什么意思?有何来历? - 红网问答
  4. 一个简单的权限管理系统
  5. ​吃子还是围空是个问题
  6. R语言实战笔记--第九章 方差分析
  7. 2019年工资个税计算方法来了!累计预扣法详解!
  8. ASP.NET MVC Bundles的使用
  9. APP隐私不合格被工信部下架了怎么办
  10. Filecoin创始人胡安:Filecoin改变了存储提供商的基本业务案例和成本结构(全文)...