children

.children(selector)

返回被选元素的所有直接子元素,不返回文本节点;

下面例子:给level-2的子元素设置border。比较使用children和find

html

<ul class="level-1">
<li class="item-i">I</li>
<li class="item-ii">II
<ul class="level-2">
<li class="item-a">A</li>
<li class="item-b">B
<ul class="level-3">
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
</ul>
</li>
<li class="item-c">C</li>
</ul>
</li>
<li class="item-iii">III</li>
</ul>

使用children

<script>$('ul.level-2').children().css('border', '1px solid red');</script>

结果:

使用find,非直接子元素的li也设置上了border

<script>$('ul.level-2').find('li').css('border', '1px solid red');</script>

如果需要获得包含文本和注释节点在内的所有子节点,请使用 .contents(),检索 DOM 树中的这些元素的直接子节点。

.contents() 方法也可以用于获得 iframe 的内容文档,前提是该 iframe 与主页面在同一个域。

each

为每个匹配元素规定运行的函数,返回 false 可用于及早停止循环

$(selector).each(function(index,element))
参数:选择器的 index 位置;element,当前的元素(也可使用 "this" 选择器)
$("button").click(function(){
  $("li").each(function(){
    alert($(this).text())
  });
});

eq

指定匹配元素合集中 index 上的一个

index:整数,指示元素的位置(最小为 0),如果是负数,则从集合中的最后一个元素往回计数。

注:如果无法根据指定的 index 参数找到元素,则该方法构造带有空集的 jQuery 对象,length 属性为 0。

下面代码:为 index 为 2 的 div 添加类,将其变为蓝色:

$("body").find("div").eq(2).addClass("blue");

filter

通过选择器匹配元素集合中的指定元素集合。

示例:改变所有 div 的颜色,然后向类名为 "middle" 的类添加边框:

$("div").css("background", "#c8ebcc")
.filter(".middle")
.css("border-color", "red");

has

返回 后代包含has选择器的元素

示例:返回包含ul的li元素

<ul>
<li>list item 1</li>
<li>list item 2
<ul>
<li>list item 2-a</li>
<li>list item 2-b</li>
</ul>
</li>
<li>list item 3</li>
<li>list item 4</li>
</ul>
$('li').has('ul').css('background-color', 'red');

next和nextAll:选择下一个同辈元素

<body>
<div><span>And Again</span></div>
<p class="selected">Hello Again</p>
<p class="selected">Hello Again</p> <script>
$("div").next(".selected").css("background", "yellow");
</script> </body>

使用next:选中挨着的第一个.selected

使用nextAll,选中所有

相似的找上一个同辈元素:prev,prevAll

not

从匹配元素集合中删除元素。参考文档:http://www.w3school.com.cn/jquery/traversing_not.asp

is

根据选择器、元素或 jQuery 对象来检测匹配元素集合,如果这些元素中至少有一个元素匹配给定的参数,则返回 true。

用法参考文档:http://www.w3school.com.cn/jquery/traversing_is.asp

siblings

匹配集合中每个元素的同胞,通过选择器进行筛选是可选的。

<ul>
<li>list item 1</li>
<li>list item 2</li>
<li class="third-item">list item 3</li>
<li>list item 4</li>
<li>list item 5</li>
</ul> $('li.third-item').siblings().css('background-color', 'red');

代码结果:

jq的遍历关系元素方法集合的更多相关文章

  1. 用 DOM 获取页面的元素方法集合

    document.getElementById('id名')            // 获取页面设置指定 id 的元素 document.getElementsByTagName('标签名')    ...

  2. OpenCV快速遍历矩阵元素方法

    OpenCV中Mat矩阵data数据的存储方式和二维数组不一致,二维数组按照行优先的顺序依次存储,而Mat中还有一个标示行步进的变量Step.使用Mat.ptr<DataTyte>(row ...

  3. java 数据类型:集合接口Collection之常用ArrayList;lambda表达式遍历;iterator遍历;forEachRemaining遍历;增强for遍历;removeIf批量操作集合元素(Predicate);

    java.util.Collection接口 Java的集合主要由两个接口派生出来,一个是Collection一个是Map,本章只记录Collection常用集合 集合只能存储引用类型数据,不能存储基 ...

  4. STL中用erase()方法遍历删除元素 .xml

    pre{ line-height:1; color:#f0caa6; background-color:#2d161d; font-size:16px;}.sysFunc{color:#e54ae9; ...

  5. STL中用erase()方法遍历删除元素

    STL中的容器按存储方式分为两类,一类是按以数组形式存储的容器(如:vector .deque):另一类是以不连续的节点形式存储的容器(如:list.set.map).在使用erase方法来删除元素时 ...

  6. java 遍历map 方法 集合 五种的方法

    package com.jackey.topic; import java.util.ArrayList;import java.util.HashMap;import java.util.Itera ...

  7. WPF 得到子指定元素方法和得到指定子元素集合方法MvvM得到焦点

    public class UIHelper { /// <summary> /// 在Visual里找到想要的元素 /// childName可为空,不为空就按名字找 /// </s ...

  8. jquery 元素选择器集合

    一.基本选择器 1. id选择器(指定id元素) 将id="one"的元素背景色设置为黑色.(id选择器返单个元素) $(document).ready(function () { ...

  9. Map集合的遍历方式以及TreeMap集合保存自定义对象实现比较的Comparable和Comparator两种方式

    Map集合的特点 1.Map集合中保存的都是键值对,键和值是一一对应的 2.一个映射不能包含重复的值 3.每个键最多只能映射到一个值上 Map接口和Collection接口的不同 Map是双列集合的根 ...

随机推荐

  1. 第一篇-Git基础学习

    学习网址: https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/0013758410 ...

  2. Codeforces Round #518 (Div. 2) B LCM

    传送门 https://www.cnblogs.com/violet-acmer/p/10163375.html 题解: 这道题有点意思,有点数学的味道. 根据定义“[a,b] / a”可得这求得是l ...

  3. Java如何判断文件或者文件夹是否在?不存在如何创建?

    Java如何判断文件或者文件夹是否在?不存在如何创建?   1. 首先明确一点的是:test.txt文件可以和test文件夹同时存在同一目录下:test文件不能和test文件夹同时存在同一目录下. 原 ...

  4. 原生JS实现$.ajax

    function ajax(obj){ obj=obj||{}; obj.type=(obj.type||'GET').toUpperCase(); obj.dataType=obj.dataType ...

  5. webDriver文档阅读笔记

    一些雷 浏览器版本和对应的Driver的版本是一一对应的,有时候跑不起来,主要是因为driver和浏览器版本对不上. e.g: chrome和driver版本映射表:https://blog.csdn ...

  6. java静态变量和final关键字

    静态变量其实就是全局变量 静态方法不需要实例化对象,直接可以调用. public class StaticVariable { public static int num1=20; public vo ...

  7. fork()、vfork()、clone()的区别

    因为生活的复杂,这是一个并行的世界,在同一时刻,会发生很多奇妙的事情,北方下雪,南方下雨,这里在吃饭,那边在睡觉,有人在学习,有人在运动,所以这时一个多彩多姿的世界,每天都发生着很多事情,所以要想很好 ...

  8. 有限状态机FSM

    有限状态机(Finite-state machine)又称有限状态自动机,是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型.常用与:正则表达式引擎,编译器的词法和语法分析,游戏设计,网络 ...

  9. 一键开启MacOS HiDPI

    完整文件下载:一键开启MacOS HiDPI 引言 作为一个黑苹果用户,追求黑果的体验是当然的,当各个硬件都驱动完善后,要做的就是细节的优化了,毕竟装上是拿来用的,可不能因为体验差苦了自己啊.机器毕竟 ...

  10. 虚拟机centos无法连接外网时怎么处理

    1. 首先查看service 如果没有启动请启动这2个服务. 2. 在虚拟机那重启网络端口 ifdown ens33 ifup ens33