1、jQuery--Dom遍历

  1)jquery遍历---祖先元素

parents() 方法返回被选元素的所有祖先元素,它一路向上直到文档的根元素 (<html>)。也可以使用可选参数来过滤对祖先元素的搜索。

下面的例子返回所有 <span> 元素的所有祖先:

$("span").parents();

下面的例子返回所有 <span> 元素的所有祖先,并且它是 <ul> 元素

$("span").parents(‘ul’);

parent() 方法返回被选元素的父元素,

$("span").parents();

parentsUntil() 方法返回介于两个给定元素之间的所有祖先元素。

下面的例子返回介于 <span> 与 <div> 元素之间的所有祖先元素

eg、 $("span").parentsUntil("div").css({"color":"red","border":"2px solid red"});

  2)jquery遍历---后代

下面是两个用于向下遍历 DOM 树的 jQuery 方法:

children() 方法返回被选元素的所有直接子元素。

该方法只会向下一级对 DOM 树进行遍历。

  eg、 $("div").children();

也可以使用可选参数来过滤对子元素的搜索。下面的例子返回类名为 "1" 的所有 <p> 元素,并且它们是 <div> 的直接子元素:

eg: $("div").children(‘p.1’);

jQuery find() 方法

find() 方法返回被选元素的后代元素,指定类名的所有后代元素(一路向下直到最后一个后代)。

下面的例子返回属于 <div> 后代的所有 <span> 元素:

eg. $("div").find("span");

下面的例子返回 <div> 的所有后代:

eg、 $("div").find("*");

 3)、jquery遍历---同胞

有许多有用的方法让我们在 DOM 树进行水平遍历:

  • siblings()

    • siblings() 方法返回被选元素的所有同胞元素
      • 下面的例子返回 <h2> 的所有同胞元素:

        • $("h2").siblings();
    • 也可以使用可选参数来过滤对同胞元素的搜索。
      • 下面的例子返回属于 <h2> 的同胞元素的所有 <p> 元素: $("h2").siblings("p");
  • next()
    • next() 方法返回被选元素的下一个同胞元素。

      • 下面的例子返回 <h2> 后面的下一个同胞元素: $("h2").next();
  • nextAll()
    • nextAll() 方法返回被选元素的所有跟随的同胞元素。

      • 下面的例子返回 <h2> 后面的所有跟随的同胞元素:$("h2").nextAll();
  • nextUntil()
    • nextUntil() 方法返回介于两个给定参数之间的所有跟随的同胞元素。

      • 下面的例子返回介于 <h2> 与 <h6> 元素之间的所有同胞元素:$("h2").nextUntil("h6");
  • prev()
  • prevAll()
  • prevUntil()

jQuery prev(), prevAll() & prevUntil() 方法

prev(), prevAll() 以及 prevUntil() 方法的工作方式与上面的方法类似,只不过方向相反而已:它们返回的是前面的同胞元素(在 DOM 树中沿着同胞元素向后遍历,而不是向前)。

jQuery 遍历- 过滤

三个最基本的过滤方法是:first(), last() 和 eq(),它们允许您基于其在一组元素中的位置来选择一个特定的元素。

first() 方法返回被选元素的首个元素。

last() 方法返回被选元素的最后一个元素。

eq() 方法返回被选元素中带有指定索引号的元素。

jQuery filter() 方法

filter() 方法允许您规定一个标准。不匹配这个标准的元素会被从集合中删除,匹配的元素会被返回。

  下面的例子返回带有类名 "intro" 的所有 <p> 元素:

     $("p").filter(".intro");

jQuery not() 方法

not() 方法返回不匹配标准的所有元素。

提示:not() 方法与 filter() 相反。

  下面的例子返回不带有类名 "intro" 的所有 <p> 元素:

    $("p").not(".intro");

jquery中遍历的更多相关文章

  1. 问题:jQuery中遍历XML文件时候,获取子节点children不支持的情况(已解决)

    问题描述: 今天在写一个基于 jquery 的读取xml文件的程序时候,需要遍历xml的节点. 代码片段如下: function parse_xml_node(parent,result){ // r ...

  2. JS Jquery 中 的遍历

      $.each()和$().each(),以及forEach()的用法   1.forEach是js中遍历数组的方法,如下 var arr=[1,2,3,4];arr.forEach(functio ...

  3. Jquery中each的三种遍历方法

    Jquery中each的三种遍历方法 $.post("urladdr", { "data" : "data" }, function(dat ...

  4. jQuery中$.each()方法(遍历)

    $.each()是对数组,json和dom结构等的遍历,说一下他的使用方法吧. 1.遍历一维数组 var arr1=['aa','bb','cc','dd']; $.each(arr1,functio ...

  5. jquery 中后代遍历之children、find区别

    jquery 中children.find区别 首先看一段HTML代码,如下: <table id="tb"> <tr> <td>0</t ...

  6. jQuery中使用$.each()遍历数组时要注意的地方

    使用jQuery中 $.each()遍历数组,要遍历的数组不能为空(arry!="") 例如:           $.each(arry, function (i, item)  ...

  7. Jquery中each的3种遍历方式

    学习目标: 参考博文: https://blog.csdn.net/honey_th/article/details/7404273 一.Jquery中each的几种遍历方法 1. 选择器+遍历 &l ...

  8. JS和jQuery中ul li遍历获取对应的下角标

    首先先看代码: html代码部分: <div id="div"> <ul> <li>1111111</li> <li>2 ...

  9. JQuery中ajax的相关方法总结

    前提条件 话说是jquery中的ajax方法,那么前提条件当然是引入jquery啦. <script src="http://libs.baidu.com/jquery/1.9.0/j ...

随机推荐

  1. linux 出错 “INFO: task xxxxxx: 634 blocked for more than 120 seconds.”的3种解决方案

    https://blog.csdn.net/electrocrazy/article/details/79377214

  2. 【AtCoder】AGC016

    A - Shrinking 用每个字母模拟一下就行 #include <bits/stdc++.h> #define fi first #define se second #define ...

  3. Vue小问题汇总

    1.element-UI等组件更改默认样式: >>> https://vue-loader-v14.vuejs.org/zh-cn/features/scoped-css.html ...

  4. NowCoder Wannafly 27E 黄魔法师 构造

    原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-Wannafly27E.html 题目传送门 - NowCoder Wannafly 27E 题 ...

  5. 将xml 写到内存中再已string类型读出来

    System.IO.MemoryStream ms = new System.IO.MemoryStream(); xmlDoc.Save(ms); System.IO.StreamReader sr ...

  6. python3实现链表

    1.链表的实现 a.链表的结构为: b.链表的实现方法; #链表结构实现 私有属性_pro_item是指向下个节点的指针,_item为此节点的值 class ChainDemo(): def __in ...

  7. json数组,前后端传值问题,与data时间转毫秒

    从json数组到ArrayList Gson gson = new Gson(); Car cars = gson.fromJson(result,new TypeToken<ArrayList ...

  8. win 10 slmgr.vbs -xpr 无法运行,被豆麦笔记打开解决方法

    win 10 slmgr.vbs -xpr 无法运行,被豆麦笔记打开解决方法 删除这个豆麦笔记 如果之前已经在 控制面板 程序中卸载过,那么是找不到的,我们先运行 slmgr.vbs -xpr,这个时 ...

  9. 队列queue实现线程的消费者和生产者

    import threading import queue import random import time qq = queue.Queue(4) #实例化一个队列,因为是一个进程的线程,所以共资 ...

  10. redis虚拟内存

    对于redis 这样的内存数据库, 内存总是不够用的. 除了可以将数据分割到多个 redis 服务器以外. 另外的能够提高数据库容量的办法就是使用虚拟内存技术把那些不经常访问的数据交换到磁盘上 如果我 ...