DOM遍历

news2024/11/18 5:49:30

DOM 遍历是指在 HTML 文档中导航和定位元素的过程。通过 DOM 遍历,您可以在文档中移动并查找特定的元素,以便对其进行操作或者检索信息。

寻找子元素

//DOM遍历
const h1 = document.querySelector('h1');

//寻找子元素
console.log(h1.querySelectorAll('.highlight'));

在这里插入图片描述
在这里插入图片描述

上面的代码说明可以通过DOM遍历快速的定位到子元素

● 我们也可以找到元素的所有子节点(包括元素节点、文本节点和注释节点)的 NodeList 对象

console.log(h1.childNodes);

在这里插入图片描述

● 我们也可以找到元素的所有子元素节点,不包括文本节点和注释节点。这将返回一个 HTMLCollection 对象,其中包含所有子元素。

console.log(h1.children);

在这里插入图片描述

● 当然,我们可以通过这种寻找某个元素的子元素的方式来定义style

h1.firstElementChild.style.color = 'white';
h1.lastElementChild.style.color = 'orangered';

在这里插入图片描述

寻找父元素

● 找到元素的父节点,无论父节点是什么类型的节点(元素节点、文本节点等)。这将返回一个 Node 对象,表示 h1 元素的父节点。

console.log(h1.parentNode);

在这里插入图片描述

● 找到元素的最近的父元素节点。如果 h1 的父节点是一个元素节点,则返回这个元素节点;如果 h1 没有父元素节点,则返回 null。

console.log(h1.parentElement);

在这里插入图片描述

● 使用 closest 方法来查找最接近的具有指定选择器的祖先元素,并为找到的元素设置背景颜色。

h1.closest('.header').style.background = 'var(--gradient-secondary)';
h1.closest('h1').style.background = 'var(--gradient-primary)';

在这里插入图片描述

寻找兄弟元素

● 打印出该前一个兄弟元素节点

console.log(h1.previousElementSibling);

在这里插入图片描述

说明向上没有兄弟元素,我们也可以往下找

console.log(h1.nextElementSibling);

在这里插入图片描述

● h1 元素的前一个兄弟节点和后一个兄弟节点,或者如果它们不存在则显示 null。需要注意的是,这两个属性获取的节点可能是元素节点也可能是文本节点(或者其他类型的节点)。

console.log(h1.previousSibling);
console.log(h1.nextSibling);

在这里插入图片描述

● 那我们怎么知道元素的所有兄弟元素呢,我们可以找父元素的所有子元素

console.log(h1.parentElement.children);

在这里插入图片描述

● 最后,我们来玩一下,将除h1元素的所有兄弟元素缩小一半

[...h1.parentElement.children].forEach(function (el) {
  if (el !== h1) el.style.transform = 'scale(0.5)';
});

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1864223.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据恢复篇:如何恢复丢失的Android短信?

许多用户发现自己处于重要短信意外从Android手机中删除的情况。幸运的是,有一些行之有效的方法可以在没有root的情况下恢复已删除的短信Android,这可以成为救命稻草。这些技术不需要深厚的技术知识,也不需要损害设备的安全性。为了帮助您摆脱…

驱动程序无法通过使用安全套接字层(SSL)加密与 SQL Server 建立安全连接的解决方法

在连接数据库的时候出现了下面图面中的错误,尝试集中方法后终于解决了这个问题。 1.修改驱动程序版本 出现这种错误可能是因为你的驱动程序版本不兼容,我们可以尝试修改版本解决。而我们的驱动程序往往是以依赖的形式导入,因此可以在maven仓…

iOS17系统适配

iOS17 新功能 文章目录 iOS17 新功能iOS17支持哪几款机型Xcode15新特性iOS17-开发适配指南 横屏待机 在iOS 17中,还带来了横屏待机功能,苹果将这个新功能命名为“Standby”模式,为 iPhone 带来了全新的玩法。iPhone启用之后,默认情…

Purple Pi OH固件的芯片信息识别问题说明

本文适用于在Purple Pi OH固件的芯片信息识别问题说明。触觉智能的Purple Pi OH鸿蒙开源主板,是华为Laval官方社区主荐的一款鸿蒙开发主板。 该主板主要针对学生党,极客,工程师,极大降低了开源鸿蒙开发者的入门门槛,具…

每日一题——Python实现PAT乙级1030 完美数列(举一反三+思想解读+逐步优化)五千字好文

一个认为一切根源都是“自己不够强”的INTJ 个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 初次尝试 再次尝试 代码结构 时间复杂度分析 空间复杂度分析 总结 我要更强 时…

初阶 《操作符详解》11. 下标引用、函数调用和结构成员

11. 下标引用、函数调用和结构成员 1. [ ] 下标引用操作符 操作数:一个数组名 一个索引值 int arr[10];//创建数组 arr[9] 10;//实用下标引用操作符,[ ]的两个操作数是arr和9arr[7]-->*(arr7)-->*(7arr)-->7[arr] 7[arr] 9; //编译器不会…

Wordpress图像编辑插件-palleon v3.8.1中文版语言包

Palleon是一个强大的WordPress图像编辑器,可以与您的WordPress网站无缝集成,让您快速高效地工作。它拥有为你的WordPress网站创建令人惊叹的图像所需的一切。 Palleon让您完全控制图像,允许您逐个像素进行更改。您可以轻松地裁剪、调整图像大…

java swing jtable显示数据库记录

代码, import java.awt.Container; import java.awt.Color; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import javax.swing.*; import javax.swing.tabl…

Ubuntu+Apache2 搭建Gerrit 环境

一、前言 时隔多年,好久没有更新CSDN 博客了,主要原因有如下两点: 1、平时工作繁忙,无暇更新。 2、工作内容涉及信息安全,一些工作经验积累不便更新到互联网上。 最近一直在折腾搭建Gerrit 环境,最开始是…

百威英博旗下知名啤酒品牌Jupiler,创意助力比利时国足角逐欧洲杯冠军!

怎么说呢?今天非常开心。 因为今天分享的这个品牌创意案例很特别,和夏天、足球有关,和梦想、啤酒有关,还和QR Tiger 、二维彩虹有关。而把这一切连接在一起的,是一个小小的二维码。 这个夏天,百威英博旗下…

怎么新建百度词条

新建百度词条是一个分步骤的过程,需要遵循一定的规则和流程。以下是百科参考网shaoshai整理详细的步骤: 点击输入图片描述(最多30字) 怎么新建百度词条 1. 注册百度账号 在创建百度词条之前,您需要先注册一个百度账号…

老板电器发布首个烹饪大模型“食神”,再次引领烹饪变革

爱因斯坦曾经说过:“我从不去想未来,因为它来得已经够快的了。”今天的人类社会,或许正处在一个连爱因斯坦都难以想象的巨变时代。一个没有任何高等数学或编程基础的普通人,只需一部手机或电脑,就可以享受苏格拉底的在…

2024年【山东省安全员B证】最新解析及山东省安全员B证操作证考试

题库来源:安全生产模拟考试一点通公众号小程序 2024年【山东省安全员B证】最新解析及山东省安全员B证操作证考试,包含山东省安全员B证最新解析答案和解析及山东省安全员B证操作证考试练习。安全生产模拟考试一点通结合国家山东省安全员B证考试最新大纲及…

多项式回归(Linear Regression)原理详解及Python代码示例

多项式回归原理详解 多项式回归(Polynomial Regression)是线性回归(Linear Regression)的一种扩展形式。它通过在输入变量上添加高次项来拟合非线性关系。虽然多项式回归本质上还是线性模型,但它允许模型在输入特征的多…

FuTalk设计周刊-Vol.028

🔥AI漫谈 热点捕手 1、图像生成模型大比拼 如前文所说,这周 Adobe 发布了多款图像生成模型,同时前一段时间,DALLE 3 也正式上线,那么 Midjourney、DALLE 3 与 Adobe Firefly 三款 图像生成模型的水平孰优孰劣呢&…

wps linux node.js 加载项开发,和离线部署方案

环境准备 windwos 安装node.js 安装VSCode 安装wps linux 安装node.js 安装VSCode 安装wps 通过npm 安装wpsjs SDK 使用npm安装wpsjs npm install -g wpsjs 创建一个项目 wpsjs create WPS-Addin-PPT 创建项目会让你选择2个东西: 1:选择你的文…

易飞8.0工单用料异常分析表

系统自带工单用料分析表看着复杂,但如果用了工单变更单,且下单时候手动改了用量,异常是不会出来。 对此特写一查询报表,根据BOM表来核对,在ERP前台逻辑一对,确实异常出来了。 系统工单: 工单用…

2006年上半年软件设计师【上午题】试题及答案

文章目录 2006年上半年软件设计师上午题--试题2006年上半年软件设计师上午题--答案 2006年上半年软件设计师上午题–试题 2006年上半年软件设计师上午题–答案

学好 prompt 让大模型变身撩富婆专家,带你走上人生巅峰

前文 使用大模型的最重要的一步就是编写好的提示词 prompt ,但是 prompt 既容易被低估也容易被高估。被低估是因为设计良好的提示词可以显著提升效果。被高估是因为即使是基于提示的应用也需要大量的工程工作才能使其发挥作用。下面我会介绍在编写 prompt 的时候&a…

PFA 反应罐盖特氟龙 润滑绝缘行业加工 匠心工艺

PFA反应罐别名也叫反应瓶,储样罐,清洗罐等。可作为样品前处理实验中消解样品和中低压溶样的反应容器,广泛应用于半导体分析、新材料、新能源、同位素分析等。 PFA反应罐规格参考:250ml、300ml、350ml、500ml、1L等。 产品特点&am…