当前位置: 首页 > news >正文

10-jQuery-遍历children、parent、for、each、for...of等

1、for 循环:可以用来遍历数组或类数组对象,但不能用来遍历普通对象。

<ul><li>John</li><li>Doe</li><li>Jane</li><li>Doe</li>
</ul><script>var lis = $('li');for (var i = 0; i < lis.length; i++) {console.log(lis[i].textContent);}
</script>

上述代码表示:通过 $ 函数选择所有 li 元素,并将它们存储在变量 lis 中。然后使用 for 循环遍历 lis 数组,打印出每个 li 元素的文本内容。

2、each() 方法:可以遍历任何类型的集合,包括普通对象、数组和类数组对象。

<ul><li id="1">John</li><li id="2">Doe</li><li id="3">Jane</li><li id="4">Doe</li>
</ul><script>$('li').each(function(index, element) {console.log(index + ':' + $(element).text());});
</script>

上述代码表示:使用 $ 函数选择所有 li 元素,并使用 each() 方法遍历它们。each() 方法接受一个函数作为参数,在每个元素上执行该函数。这个函数包含两个参数:元素的索引和元素本身。在示例代码中,使用 console.log() 打印每个 li 元素的索引和文本内容。

3、for...of 循环是 ES6 引入的一种新的循环语法,可以用来遍历所有可迭代对象,包括数组、类数组对象和字符串等。

<div class="container"><div>John</div><div>Doe</div><div>Jane</div><div>Doe</div>
</div>
<script>var container = $('.container');for (var element of container.children()) {console.log($(element).text());}
</script>

上述代码表示:通过 $ 函数选择 container 元素,并使用 children() 方法获取它的所有子元素。然后使用 for...of 循环遍历所有子元素,并打印出它们的文本内容。需要注意的是,for...of 循环中的 element 变量是 DOM 元素,需要使用 $ 函数将其转换成 jQuery 对象才能进行相关操作。

4、children() 方法返回当前元素的所有子元素,可以带一个可选的选择器参数进行筛选。

<div class="container"><p>John</p><p>Doe</p><p>Jane</p><p>Doe</p>
</div>
<script>var container = $('.container');container.children().each(function() {console.log($(this).text());});
</script>

上述代码表示:使用 $ 函数选择 container 元素,并使用 children() 方法获取它的所有子元素。然后使用 each() 方法遍历所有子元素,并打印出它们的文本内容。

5、find() 方法返回当前元素的所有后代元素,可以带一个可选的选择器参数进行筛选。

<div class="container"><ul><li>John</li><li>Doe</li></ul><ul><li>Jane</li><li>Doe</li></ul>
</div><script>var container = $('.container');container.find('li').each(function() {console.log($(this).text());});
</script>

上述代码表示:使用 $ 函数选择 container 元素,并使用 find() 方法获取它的所有后代 li 元素。然后使用 each() 方法遍历所有 li 元素,并打印出它们的文本内容。

6、parent() 方法返回当前元素的直接父元素。

<div class="container"><p>John</p><p>Doe</p>
</div><script>var p = $('p');p.parent().css('background-color', 'yellow');
</script>

上述代码表示:使用 $ 函数选择所有 p 元素,并使用 parent() 方法获取它们的直接父元素。然后使用 css() 方法修改它们的背景颜色为黄色。

7、parents() 方法返回当前元素的所有祖先元素,可以带一个可选的选择器参数进行筛选。

<div class="outer"><div class="inner"><p>John</p><p>Doe</p></div>
</div>
<script>var p = $('p');p.parents('.outer').css('background-color', 'yellow');
</script>

上述代码表示:使用 $ 函数选择所有 p 元素,并使用 parents('.outer') 方法获取它们的最近的带有类名为 outer 的祖先元素。然后使用 css() 方法修改该祖先元素的背景颜色为黄色。


jQuery 遍历函数

jQuery 遍历函数包括了用于筛选、查找和串联元素的方法。

函数描述
.add()将元素添加到匹配元素的集合中。
.andSelf()把堆栈中之前的元素集添加到当前集合中。
.children()获得匹配元素集合中每个元素的所有子元素。
.closest()从元素本身开始,逐级向上级元素匹配,并返回最先匹配的祖先元素。
.contents()获得匹配元素集合中每个元素的子元素,包括文本和注释节点。
.each()对 jQuery 对象进行迭代,为每个匹配元素执行函数。
.end()结束当前链中最近的一次筛选操作,并将匹配元素集合返回到前一次的状态。
.eq()将匹配元素集合缩减为位于指定索引的新元素。
.filter()将匹配元素集合缩减为匹配选择器或匹配函数返回值的新元素。
.find()获得当前匹配元素集合中每个元素的后代,由选择器进行筛选。
.first()将匹配元素集合缩减为集合中的第一个元素。
.has()将匹配元素集合缩减为包含特定元素的后代的集合。
.is()根据选择器检查当前匹配元素集合,如果存在至少一个匹配元素,则返回 true。
.last()将匹配元素集合缩减为集合中的最后一个元素。
.map()把当前匹配集合中的每个元素传递给函数,产生包含返回值的新 jQuery 对象。
.next()获得匹配元素集合中每个元素紧邻的同辈元素。
.nextAll()获得匹配元素集合中每个元素之后的所有同辈元素,由选择器进行筛选(可选)。
.nextUntil()获得每个元素之后所有的同辈元素,直到遇到匹配选择器的元素为止。
.not()从匹配元素集合中删除元素。
.offsetParent()获得用于定位的第一个父元素。
.parent()获得当前匹配元素集合中每个元素的父元素,由选择器筛选(可选)。
.parents()获得当前匹配元素集合中每个元素的祖先元素,由选择器筛选(可选)。
.parentsUntil()获得当前匹配元素集合中每个元素的祖先元素,直到遇到匹配选择器的元素为止。
.prev()获得匹配元素集合中每个元素紧邻的前一个同辈元素,由选择器筛选(可选)。
.prevAll()获得匹配元素集合中每个元素之前的所有同辈元素,由选择器进行筛选(可选)。
.prevUntil()获得每个元素之前所有的同辈元素,直到遇到匹配选择器的元素为止。
.siblings()获得匹配元素集合中所有元素的同辈元素,由选择器筛选(可选)。
.slice()将匹配元素集合缩减为指定范围的子集。

相关文章:

10-jQuery-遍历children、parent、for、each、for...of等

1、for 循环&#xff1a;可以用来遍历数组或类数组对象&#xff0c;但不能用来遍历普通对象。 <ul><li>John</li><li>Doe</li><li>Jane</li><li>Doe</li> </ul><script>var lis $(li);for (var i 0; i &…...

联想集团财报:收入持续下滑,联想集团财务前景已恶化

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 联想集团2023财年第三季度财务业绩回顾 联想集团&#xff08;00992&#xff09;于2023年2月16日盘后公布了该公司2023财年第三季度的财报。 财报显示&#xff0c;联想集团的收入已经从2022财年第三季度的201.27亿美元下降到…...

GPT4限制被破解!ChatGPT实现超长文本处理的新方法

目录 前言 使用chat-gpt过程中有哪些痛点 1.无法理解人类情感和主观性 2.上下文丢失 3.约定被打断 那如何去解决这个痛点 Transformer&#xff08;RMT&#xff09;怎么去实现的 1.Transformer 模型 2.RMT模型 3.计算推理速率 4.渐进学习能力 总结 写到最后 大家好…...

奋斗,然后成功:我的架构狮之梦

与代码结缘 2018年&#xff0c;当时听说了一个很厉害的人——吴瀚清老师&#xff0c;也就是大家所熟知的“道哥”。关于他的事情有很多传说&#xff0c;于是我也很快成为了他的小迷弟&#xff0c;把吴瀚清老师当成了自己的偶像。 也是那一年&#xff0c;我买了人生中第一本关…...

自定义属性,v-bind computed的使用

0.0 自定义组件的使用 【掌握】 先自定义自己的组件 引入组件 import 组件名 from 路径/文件名 注册组件 <script> export default {components:{ // 组件注册组件名:组件名&#xff0c;组件名1},data(){ // 数据return {}},methods:{ // 方法} ​ } ​ </script&…...

解决城市内涝的措施有哪些?需要用到哪些监测设备?

随着城市化的不断推进&#xff0c;城市内涝问题日益凸显。极端天气事件如暴雨、台风等对城市基础设施和居民生活造成了严重影响。那么&#xff0c;解决城市内涝的措施有哪些?需要用到哪些监测设备?针对上述问题&#xff0c;本文会为大家一一进行讲解。 解决城市内涝的措施有哪…...

Spark大数据处理讲课笔记----Spark任务调度

零、本节学习目标 理解DAG概念了解Stage划分了解RDD在Spark中的运行流程 一、有向无环图 &#xff08;一&#xff09;DAG概念 DAG&#xff08;Directed Acyclic Graph&#xff09;叫做有向无环图&#xff0c;Spark中的RDD通过一系列的转换算子操作和行动算子操作形成了一个…...

【22-23春】AI作业10-经典卷积网络

1.LeNet & MNIST LeNet是一种神经网络的模型&#xff0c;用于图像识别和分类。他包含 3 个卷积层&#xff0c;2 个池化层&#xff0c;1 个全连接层。其中所有卷积层的所有卷积核都为 5x5&#xff0c;步长 strid1&#xff0c;池化方法都为全局 pooling&#xff0c;激活函数…...

第13章_约束

第13章_约束 1. 约束(constraint)概述 1.1 为什么需要约束 数据完整性&#xff08;Data Integrity&#xff09;是指数据的精确性&#xff08;Accuracy&#xff09;和可靠性&#xff08;Reliability&#xff09;。它是防止数据库中存在不符合语义规定的数据和防止因错误信息的…...

GPC规范--安全域基础概念

概述&#xff1a; 分为三种主流类型&#xff1a; 1、发卡方安全域(Issuer Security Domain&#xff0c; ISD)&#xff0c;卡片上首要的、强制性存在的安全域&#xff0c;是卡片管理者(通常是发卡方)在卡片内的代表&#xff1b; 2、补充安全域(Supplementary Security Domain&am…...

C++初阶--C++入门之基础学习

0.前言 C是一门非常好的编程语言&#xff0c;但可能在学习C的过程中会遇到很多困难。人们常说 “一个人走得很快&#xff0c;一群人会走的更远”&#xff0c; 所以就让我们一起攻坚克难&#xff0c;一起征服C吧&#xff01;从本章开始&#xff0c;我们将开始C的基础学习&#x…...

服务器虚拟化部署

服务器虚拟化部署 1、背景2、目的3、环境4、部署4.1、部署VMware ESXi4.1.1、准备工作4.1.2、部署ESXi4.1.3、配置ESXi4.1.4 、部署虚拟机 1、背景 项目上利旧9台服务器&#xff0c;项目需要使用15台服务器&#xff0c;外购已经没有项目硬件采购预算&#xff0c;只能从目前的…...

实验篇(7.2) 01. 实验环境介绍 远程访问 ❀ Fortinet网络安全专家 NSE4

【简介】学习NSE4&#xff0c;如果只看文章而不动手做实验&#xff0c;就象耍流氓。为了有效的巩固学习到的内容&#xff0c;建议经常动手做实验。实验不怕出错&#xff0c;身经百战后&#xff0c;再在生产环境部署和配置FortiGate防火墙&#xff0c;就会做到胸有成竹。 虚拟实…...

ThinkPHP6 模型层的模型属性,表映射关系,以及如何在控制层中使用模型层和模型层中的简单CRUD

ThinkPHP6 模型层的模型属性&#xff0c;表映射关系&#xff0c;以及模型层的CRUD及如何在控制层中使用模型层 1. model 模型层的默认映射规则 模型&#xff0c;即mvc模式中的model层&#xff0c;model层用来对接数据库&#xff0c;操作数据库的增删改查。 在tp6中&#xff…...

CodeForces.1806A .平面移动.[简单][判断可达范围][找步数规律]

题目描述&#xff1a; 题目解读&#xff1a; 给定移动规则以及起始点&#xff0c;终点&#xff1b;分析终点是否可达&#xff0c;可达则输出最小步数。 解题思路&#xff1a; 首先要判定是否可达。画图可知&#xff0c;对于题目给定的移动规则&#xff0c;只能到达起始点(a,b…...

Linux系统编程学习 NO.4 ——基础指令学习、操作系统时间的概念、文件压缩包的概念

1.时间相关的概念以及指令 1.1.时间相关的指令 1.1.1.date指令 date可以指定时间显示的格式&#xff1a;date 指定格式 选项 %H&#xff1a;小时 %M&#xff1a;分钟 %S&#xff1a;秒数 %Y&#xff1a;年份 %m&#xff1a;月份 %d&#xff1a;日 %F:相当于%Y-%m-%d %X:相当…...

leecode 数据库:601. 体育馆的人流量

导入数据&#xff1a; Create table If Not Exists Stadium (id int, visit_date DATE NULL, people int); Truncate table Stadium; insert into Stadium (id, visit_date, people) values (1, 2017-01-01, 10); insert into Stadium (id, visit_date, people) values (2, 20…...

gym不渲染画面的解决方案(gym版本号0.26.2)

确认gym版本号 我安装了新版gym&#xff0c;版本号是0.26.2&#xff0c;不渲染画面的原因是&#xff0c;新版gym需要在初始化env时新增一个实参render_mode‘human’&#xff0c;并且不需要主动调用render方法&#xff0c;官方文档入门教程如下 import gym import numpy as n…...

如何在 Fedora 37 上安装 FileZilla?

FileZilla 是一款流行的开源 FTP&#xff08;文件传输协议&#xff09;客户端&#xff0c;它提供了一个直观的界面来管理和传输文件。本文将详细介绍如何在 Fedora 37 上安装 FileZilla。以下是安装过程的详细步骤&#xff1a; 步骤一&#xff1a;更新系统 在安装任何软件之前…...

网终安全技术(刘化君)课后被略的答案

目录 8.HTTP客户机与Wb服务器通信通常会泄露哪些信息&#xff1f; 9.在TCP连接建立的3次握手阶段&#xff0c;攻击者为什么可以成功实施SYN Flood攻击&#xff1f;在实际中&#xff0c;如何防范此类攻击&#xff1f; 常用的网络漏洞扫描技术有哪几种&#xff1f;试举例说明。…...

前端可访问性:键盘导航的无障碍设计实践

前端可访问性&#xff1a;键盘导航的无障碍设计实践 前言 各位前端小伙伴&#xff0c;今天咱们来聊聊键盘导航的无障碍问题。想象一下&#xff1a; 你设计了一个漂亮的网站&#xff0c;所有交互都需要鼠标视力正常的用户觉得"交互流畅"但键盘用户完全无法使用视障用户…...

自适应能量对齐:提升电子态密度机器学习预测精度的关键技术

1. 项目概述&#xff1a;为什么电子态密度的机器学习预测需要“自适应对齐”&#xff1f;在计算材料科学领域&#xff0c;电子态密度&#xff08;DOS&#xff09;是一个核心的物理量。它描绘了材料中电子能级随能量的分布情况&#xff0c;就像一张材料的“电子身份证”。通过这…...

【具身智能】最大微信群

点击下方卡片&#xff0c;关注“CVer”公众号AI/CV重磅干货&#xff0c;第一时间送达具身智能&#xff1a;人工智能的下一个浪潮&#xff01;今年再次被写入《政府工作报告》中&#xff0c;已经成为国家未来重点培育产业。市场方面&#xff0c;具身智能近一年融资更是爆火&…...

CPT 强化学习(Cumulative Prospect Theory Reinforcement Learning)代码实现

✅ CPT 强化学习&#xff08;Cumulative Prospect Theory Reinforcement Learning&#xff09;代码实现 以下提供实用、可运行的 Python 实现&#xff0c;结合 Cumulative Prospect Theory (CPT) 与强化学习。 1. 核心概念回顾 在传统 RL 中&#xff0c;目标是最大化期望回报&a…...

Grafana告警规则配置实战

Grafana告警规则配置实战 一、Grafana告警概述 Grafana提供强大的告警功能&#xff0c;可以基于Prometheus等数据源触发告警通知。 1.1 告警流程 ┌────────────────────────────────────────────────────────────…...

如何构建高效笔记系统:解锁OneNote智能编辑新体验

如何构建高效笔记系统&#xff1a;解锁OneNote智能编辑新体验 【免费下载链接】NoteWidget Markdown add-in for Microsoft Office OneNote 项目地址: https://gitcode.com/gh_mirrors/no/NoteWidget 在数字时代&#xff0c;高效的知识管理已成为专业人士的核心竞争力。…...

Taotoken用量看板如何帮助团队分析并优化大模型API支出

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Taotoken用量看板如何帮助团队分析并优化大模型API支出 对于团队技术负责人或项目经理而言&#xff0c;管理大模型API支出并非易事…...

基于离散阻抗与线性回归的嵌入式电池健康状态在线估计方法

1. 项目概述&#xff1a;当电池健康遇上“轻量级”机器学习在电动汽车、储能电站乃至消费电子领域&#xff0c;锂离子电池的健康状态&#xff08;State of Health, SoH&#xff09;都是一个绕不开的核心指标。它直接决定了设备的续航能力、安全边界乃至剩余价值。传统的BMS&…...

终极指南:如何用novel-downloader小说下载器批量保存网络小说

终极指南&#xff1a;如何用novel-downloader小说下载器批量保存网络小说 【免费下载链接】novel-downloader 一个可扩展的通用型小说下载器。 项目地址: https://gitcode.com/gh_mirrors/no/novel-downloader 你是否曾遇到过这种情况&#xff1a;熬夜追更的小说突然从网…...

对比直接使用官方API,通过Taotoken聚合调用的成本体验

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 对比直接使用官方API&#xff0c;通过Taotoken聚合调用的成本体验 1. 从单一模型到聚合调用的成本视角 对于个人开发者或小型团队…...