一、向上遍历 DOM 树

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

$("span").parent();//返回每个 <span> 元素的的直接父元素

$("span").parents();//返回所有 <span> 元素的所有祖先

$("span").parents("ul");//返回所有 <span> 元素的所有祖先,并且它是 <ul> 元素

二、向下遍历 DOM 树

  • children()
  • find()

$("div").children();返回每个 <div> 元素的所有直接子元素

//返回类名为 "1" 的所有 <p> 元素,并且它们是 <div> 的直接子元素

$("div").children("p.1");

$("div").find("span");//返回属于 <div> 后代的所有 <span> 元素

$("div").find("*");//返回 <div> 的所有后代

三、水平遍历DOM 树

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

$("h2").siblings();//返回 <h2> 的所有同胞元素

$("h2").siblings("p");//返回属于 <h2> 的同胞元素的所有 <p> 元素

$("h2").next();//返回 <h2> 的下一个同胞元素

$("h2").nextAll();//返回 <h2> 的所有跟随的同胞元素

$("h2").nextUntil("h6");//返回介于 <h2> 与 <h6> 元素之间的所有同胞元素

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

*/

四、过滤

$("div p").first();//选取首个 <div> 元素内部的第一个 <p> 元素

$("div p").last();//选择最后一个 <div> 元素中的最后一个 <p> 元素

$("p").eq(1);//返回被选元素中带有指定索引号(从0开始)的元素

$("p").filter(".url");//返回带有类名 "url" 的所有 <p> 元素

$("p").not(".url");//返回不带有类名 "url" 的所有 <p> 元素