节点操作之创建节点

简介: 节点操作之创建节点在实际开发中,我们经常会遇到在用户使用过程中,我们需要动态创建一个文本框,也就是用户在点击某些按钮之后,我们要给这个页面添加一个新的节点。这种操作在节点操作里面叫做创建节点。那么创建节点有哪些方式呢?

节点操作之创建节点

在实际开发中,我们经常会遇到在用户使用过程中,我们需要动态创建一个文本框,也就是用户在点击某些按钮之后,我们要给这个页面添加一个新的节点。这种操作在节点操作里面叫做创建节点。那么创建节点有哪些方式呢?

创建元素节点

document.createElement('tagName');

通过创建变迁米昂指定的html元素,从而达到创建元素的目的。因为创建的元素在最开始的时候是不存在的,所以我们称为动态创建元素节点。

创建节点之后,我们还需要将所创建的这个节点添加到dom树里面去。

添加节点

我们创建节点之后,我们打开浏览器运行,很明显:我们创建的节点并没有出现,这是因为,浏览器显示的是dom树,而我们创建的节点并没有添加到dom树里面去,所以我们需要将创建的节点添加到dom树里面去。下面有两种方法将创建的节点添加到dom树里面去。

  1. appendChild()
    fatherNode.appendChild(childNode);

这个方法将一个我们已经创建的节点添加到指定父节点的子节点列表的最后一个。也就是追加元素,有点类似于数组里面的push方法。就是将一个元素添加到数组的最后一个。

  1. insertBefore()
    fatherNode.insertBefore(newNode, 指定元素);

是不是觉得第一个添加方法局限性很大,只能在最后面一个进行添加。那么这第二个方法就可以很好的解决这个问题。

这个方法是将一个新的节点添加到指定父节点的子节点列表的指定位置。也就是说,我们可以在指定的位置之前插入一个新的节点。

newMode是我们创建的节点(需要添加的节点),指定元素是我们要在哪个元素之前插入新的节点。

代码实现

下面的代码仅为代码片段:

// 创建一个div节点
    var div = document.createElement('div');
    // 设置div的内容
    div.innerHTML = '我是一个div';
    // 获取body
    var body = document.getElementsByTagName('body')[0];
    // 将div添加到body里面
    body.appendChild(div);
复制代码

这里我们先创建div节点,然后获取body节点,然后将div节点添加到body节点里面去。这里我们使用的是通过appendChild()方法将div节点添加到body节点里面去。也就是将创建的节点直接添加到body节点的子节点列表的最后一个。

// 创建一个p节点
    var p = document.createElement('p');
    // 设置p的内容
    p.innerHTML = '我是一个p';
    // 获取body
    var body = document.getElementsByTagName('body')[0];
    // 将p添加到body里面
    body.insertBefore(p, div[0]);
复制代码

第二段代码前面思路是一样的创建节点 --> 获取目标节点 --> 添加节点。这里我们使用的是insertBefore()方法将p节点添加到body节点里面去。也就是将创建的节点添加到body节点的子节点列表的指定位置。这里我们将p节点添加到body节点的子节点列表的第一个位置。


相关文章
|
域名解析 弹性计算 运维
【运维】阿里云宝塔面板域名DNS解析(如何配置用域名访问网站)
【运维】阿里云宝塔面板域名DNS解析(如何配置用域名访问网站)
7128 0
【运维】阿里云宝塔面板域名DNS解析(如何配置用域名访问网站)
|
机器学习/深度学习 数据采集 算法
大数据分析案例-基于随机森林模型对北京房价进行预测
大数据分析案例-基于随机森林模型对北京房价进行预测
1312 0
大数据分析案例-基于随机森林模型对北京房价进行预测
|
数据可视化 定位技术 Python
基于ArcMap的精美地图可视化绘制--以各省GDP数据为例
大家好,我是志斌~ 今天手把手教大家如何用ArcMap 10.3画分级地图。
2253 0
基于ArcMap的精美地图可视化绘制--以各省GDP数据为例
|
7月前
|
安全 数据安全/隐私保护 虚拟化
Windows Server 2022 中文版、英文版下载 (2025 年 5 月更新)
Windows Server 2022 中文版、英文版下载 (2025 年 5 月更新)
1821 2
|
域名解析 网络协议 数据安全/隐私保护
阿里云轻量应用服务器搭建WordPress个人博客教程
阿里云轻量应用服务器搭建WordPress个人博客教程
|
10月前
|
云安全 运维 安全
阿里云免费版SSL证书申请及部署图文教程指导
SSL证书是个人和企业搭建网站不可或缺的云安全产品,SSL证书能够为网站和移动应用(APP)及小程序提供数据HTTPS加密协议访问,保障数据的安全。阿里云SSL证书有收费版的也有免费版的,有的新手用户由于是初次在阿里云申请SSL证书,可能不是很清楚免费版证书的申请和部署流程,本文为以图文形式为大家展示阿里云免费版SSL证书最新的申请及部署教程,以供参考。
|
弹性计算 数据库连接 Nacos
阿里云ECS服务器在docker中部署nacos
docker pull nacos 失败,docker部署nacos遇到的问题,nacos数据库连接,nacos端口映射
707 1
|
安全 应用服务中间件 网络安全
部署SSL证书
部署SSL证书
1101 5
|
存储 数据可视化 数据挖掘
使用Elasticsearch进行实时数据分析与预测
【8月更文第28天】Elasticsearch 是一个分布式的、RESTful 风格的搜索和分析引擎,它能够实时地存储、检索以及分析大规模的数据集。结合 Logstash 和 Kibana,它们共同构成了 Elastic Stack,这是一套强大的工具组合,适用于收集、存储、分析和可视化数据。
579 0