jQuery遍历

jQuery 遍历,意为“移动”,用于根据其相对于其他元素的关系来“查找”(或选取)HTML 元素。以某项选择开始,并沿着这个选择移动,直到抵达您期望的元素为止。

下图展示了一个家族树。通过 jQuery 遍历,您能够从被选(当前的)元素开始,轻松地在家族树中向上移动(祖先),向下移动(子孙),水平移动(同胞)。这种移动被称为对 DOM 进行遍历。


image.png

jQuery 遍历 - 祖先

向上遍历DOM树

  • parent()
  • parents()
  • parentsUntil()

parent()

parent() 方法返回被选元素的直接父元素。
该方法只会向上一级对 DOM 树进行遍历。
("span").parent();
});

image.png

parents()

parents() 方法返回被选元素的所有祖先元素,它一路向上直到文档的根元素 ()。

$(document).ready(function(){
  $("span").parents();
});
image.png

jQuery parentsUntil() 方法

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

$(document).ready(function(){
  $("span").parentsUntil("div");
});
image.png

jQuery 遍历 - 后代

向下遍历 DOM 树

  • children()
  • find()

children() 方法

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

$(document).ready(function(){
  $("div").children();
});
image.png

您也可以使用可选参数来过滤对子元素的搜索。

$(document).ready(function(){
  $("div").children("p.1");
});

find() 方法

find() 方法返回被选元素的后代元素,一路向下直到最后一个后代。
下面的例子返回属于

后代的所有 元素:

$(document).ready(function(){
  $("div").find("span");
});
image.png

下面的例子返回

的所有后代:

$(document).ready(function(){
  $("div").find("*");
});
image.png

jQuery 遍历 - 同胞

同胞拥有相同的父元素。
通过 jQuery,您能够在 DOM 树中遍历元素的同胞元素。

在 DOM 树中水平遍历

  • siblings()
  • next()
  • nextAll()
  • nextUntil()
  • prev()
  • prevAll()
  • prevUntil()

siblings() 方法

siblings() 方法返回被选元素的所有同胞元素。
下面的例子返回

的所有同胞元素:

$(document).ready(function(){
  $("h2").siblings();
});
image.png

您也可以使用可选参数来过滤对同胞元素的搜索。
下面的例子返回属于

的同胞元素的所有

元素:

$(document).ready(function(){
  $("h2").siblings("p");
});
image.png

next() 方法

next() 方法返回被选元素的下一个同胞元素。
该方法只返回一个元素。
下面的例子返回

的下一个同胞元素:

$(document).ready(function(){
  $("h2").next();
});
image.png

nextAll() 方法

nextAll() 方法返回被选元素的所有跟随的同胞元素。
下面的例子返回

的所有跟随的同胞元素:

$(document).ready(function(){
  $("h2").nextAll();
});
image.png

nextUntil() 方法

nextUntil() 方法返回介于两个给定参数之间的所有跟随的同胞元素。
下面的例子返回介于

元素之间的所有同胞元素:

$(document).ready(function(){
  $("h2").nextUntil("h6");
});
image.png

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

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

jQuery 遍历 - 过滤

缩写搜索元素的范围

  • first()
  • last()
  • eq()
  • filter()
  • not()

first() 方法

first() 方法返回被选元素的首个元素。
下面的例子选取首个

元素内部的第一个

元素:

$(document).ready(function(){
  $("div p").first();
});
image.png

last() 方法

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


image.png

eq() 方法

eq() 方法返回被选元素中带有指定索引号的元素。
索引号从 0 开始,因此首个元素的索引号是 0 而不是 1。下面的例子选取第二个

元素(索引号 1)

$(document).ready(function(){
  $("p").eq(1);
});
image.png

filter() 方法

filter() 方法允许您规定一个标准。不匹配这个标准的元素会被从集合中删除,匹配的元素会被返回。
下面的例子返回带有类名 "intro" 的所有

元素:

$(document).ready(function(){
  $("p").filter(".intro").css("background-color","yellow");
});
image.png

not() 方法

not() 方法返回不匹配标准的所有元素。
提示:not() 方法与 filter() 相反。


image.png

你可能感兴趣的:(jQuery遍历)