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

JS进阶DAY4|节点操作

嘿👋 今天我们要一起深入探索JavaScript中的DOM操作,这是前端开发中不可或缺的技能。🌟 准备好了吗?让我们一起跳进DOM的海洋,看看怎么用代码操控网页的结构吧!

目录

1. 增加节点

1.1 使用 appendChild 方法

1.2 使用 insertBefore 方法

1.3 使用 insertAdjacentElement 方法

2. 删除节点

2.1 删除指定的节点

3. 克隆节点

3.1 克隆一个节点

3.2 将克隆的节点添加到DOM中

4. 删除克隆节点

4.1 删除克隆的节点


1. 增加节点

在DOM中增加节点就像是在一棵树上添加新的枝叶。我们有几种方法可以实现这一点。

1.1 使用 appendChild 方法

这是最基本的方法,用于将新节点添加到指定的父节点中。

// 创建一个新的元素节点let newNode = document.createElement('div');// 为新节点添加内容newNode.innerHTML = 'Hello, DOM!';// 获取要添加到的父节点let parent = document.getElementById('parentElement');// 将新节点添加到父节点中parent.appendChild(newNode);

1.2 使用 insertBefore 方法

如果你想要在一个已存在的节点前插入新节点,可以使用 insertBefore 方法。

// 创建一个新的元素节点let newNode = document.createElement('div');newNode.innerHTML = 'Before Existing Node';// 获取要插入的参考节点let referenceNode = document.getElementById('referenceElement');// 获取父节点let parent = referenceNode.parentNode;// 在参考节点前插入新节点parent.insertBefore(newNode, referenceNode);

1.3 使用 insertAdjacentElement 方法

这个方法允许你将元素插入到另一个元素的前后或子元素之前。

// 创建一个新的元素节点let newNode = document.createElement('div');newNode.innerHTML = 'Adjacent Element';// 获取要操作的元素let parent = document.getElementById('parentElement');// 在元素的末尾插入新节点parent.insertAdjacentElement('beforeend', newNode);

2. 删除节点

删除DOM中的节点就像是修剪枝叶,我们可以用 removeChild 方法来实现。

2.1 删除指定的节点

// 获取要删除的节点let nodeToDelete = document.getElementById('nodeToDelete');// 从DOM中移除节点if (nodeToDelete.parentNode) {nodeToDelete.parentNode.removeChild(nodeToDelete);}

3. 克隆节点

克隆DOM中的节点就像是复制一棵树的枝叶。我们可以用 cloneNode 方法来实现。

3.1 克隆一个节点

// 获取要克隆的节点let nodeToClone = document.getElementById('nodeToClone');// 克隆节点,deep参数为true表示克隆所有子节点let clonedNode = nodeToClone.cloneNode(true);// 为克隆的节点添加内容或修改属性clonedNode.innerHTML = 'This is a cloned node';

3.2 将克隆的节点添加到DOM中

// 获取要添加到的父节点let parent = document.getElementById('parentElement');// 将克隆的节点添加到父节点中parent.appendChild(clonedNode);

4. 删除克隆节点

删除克隆节点和删除普通节点的过程是一样的。

4.1 删除克隆的节点

// 获取要删除的克隆节点let clonedNodeToDelete = document.getElementById('clonedNodeToDelete');// 从DOM中移除克隆节点if (clonedNodeToDelete.parentNode) {clonedNodeToDelete.parentNode.removeChild(clonedNodeToDelete);}

好啦,我们今天的JavaScript DOM操作之旅就到这里啦!🚀 DOM操作是前端开发中非常基础且重要的技能,掌握它们可以让你在构建网页时更加得心应手。

如果你有任何疑问,或者想要更多地了解这个话题,随时欢迎留言哦!我们下次再见啦!👋

http://www.lryc.cn/news/501666.html

相关文章:

  • 【Web】2023安洵杯第六届网络安全挑战赛 WP
  • go 语言中协程和GMP模型
  • coco数据集转换SAM2格式
  • 【CMD、PowerShell和Bash设置代理】
  • 22智能 代码作业集合
  • 实现一个简单的后台架子(侧边栏菜单渲染,折叠,黑白主题,组件主题色,全屏,路由快捷栏)
  • vue3-canvas实现在图片上框选标记(放大,缩小,移动,删除)
  • unity3d—demo(2d人物左右移动发射子弹)
  • 【ETCD】【源码阅读】 深入解析 raftNode.start`函数:Raft 核心启动逻辑剖析
  • Robust Depth Enhancement via Polarization Prompt Fusion Tuning
  • NEFTune,SFT训练阶段给Embedding加噪音
  • uniapp -- 实现页面滚动触底加载数据
  • L22.【LeetCode笔记】相交链表(新版)
  • 智能时代网络空间认知安全新观察
  • 游戏如何应对模拟器作弊
  • c++ 判断一个 IP 地址(可能是 IPv6 或 IPv4)是否属于特定范围
  • 计算机视觉——相机标定(Camera Calibration)
  • 【qt环境配置】windows下的qt与vs工具集安装\版本对应关系
  • GitHub使用
  • 元宇宙时代的社交平台:Facebook的愿景与实践
  • vue2中各种钩子函数的总结以及使用场景
  • 软件架构:从传统单体到现代微服务的技术演变
  • git新建远程分支后,无法切换
  • 【SpringBoot】31 Session + Redis 实战
  • 在Windows环境下的rknn-toolkit环境搭建
  • Facebook广告突然无消耗?原因解析与解决方案。
  • Rabbitmq 镜像队列
  • TensorBoard
  • 运维实战:K8s 上的 Doris 高可用集群最佳实践
  • 2024.12.5——攻防世界Training-WWW-Robots攻防世界baby_web