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. CentOS7中Docker-ce的卸载和安装

    一.查看是否已安装了Docker软件包: #查看是否已经安装的Docker软件包sudo yum list installed | grep docker 二.如果已安装不想要的docker/dock ...

  2. canvas给图片加水印

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. 2018项目UML设计-课堂实战

    1. 团队信息 队名:小白吃队 成员: 卢泽明 031602328 蔡文斌 031602301 葛亮 031602617 刘浩 031602423 张扬 031602345 李泓 031602321 ...

  4. word/excel/cad中插入二维码

    1.有需求为在word文档中插入二维码,寻访度娘后,大部分人推荐使用QRmaker制作. 2.找寻QRmaker,网上很多都是1.1版本,后来才知道这个版本有问题(对中文支持不好),偶然得到1.3的版 ...

  5. python全栈开发day64-模板-变量和(.)的使用,filters和自定义filter

    一.上周内容回顾 day64 内容回顾: 1. 所有的django命令 1. 安装 pip install django==1.11.14 pip install -i 源 django==1.11. ...

  6. 【原创】python 豆瓣采集

    新手今天刚学python~~~ 有点凌乱~勉强看吧 只能算是给新手看看,见谅 简单版本的 豆瓣采集美图~~~~~~ 美女天天有 有木有~~~ python 3.4 sqlite3 BeautifulS ...

  7. Python_configparser模块

    configparser : 用于处理ini结构相似的文件,格式类似于: [DEFAULT] # 相当于一个分组 # option # 注释,说明性文字 ,默认以# 或‘:’开头的行 option1 ...

  8. Codeforces 639D Bear and Contribution

    Bear and Contribution 对于对于5余数为, 0, 1, 2, 3, 4的分别处理一次, 用优先队列贪心. #include<bits/stdc++.h> #define ...

  9. Python 面向对象1-面向对象介绍

    一.无论用什么形式来编程,我们都要明确记住以下原则: 1.写重复代码是非常不好的低级行为 2.你写的代码需要经常变更,写代码一定要遵循易读,易改的原则 3.函数编程与OOP(面向对象)的主要区别就是O ...

  10. 请使用千位分隔符(逗号)表示web网页中的大数字

    方法一:使用正则表达式 语法如下: String(Number).replace(/(\d)(?=(\d{3})+$)/g, "$1,"); 举例: String(12345678 ...