javascript核心技术(二十七)原生JS的标签节点操作(二) 添加节点到DOM树

[复制链接]
查看: 1548|回复: 31
发表于 2023-1-25 12:57:38 | 显示全部楼层 | 阅读模式
在上一节中我们在内存中创建出一个<div>hello</div>的标签,下面我们让这个标签显示在页面上。
一、通过字面量方式创建的标签,添加到DOM树(即页面)中的方法
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id="box">
        <span id="span1"></span>
        <span id="span1"></span>
        <span id="span1"></span>
    </div>
</body>
<script>
    var tag1 = '<div name="ex">添加到box的后面</div>';
    var tag2 = '<div name="ex">添加到box的前面</div>';
    var tag3 = '<div name="ex">添加到box里面的最后</div>';
    var tag4 = '<div name="ex">添加到box里面的最前</div>';
    //通过字面量创建的标签要这样添加
    var box=document.getElementById('box');
    box.insertAdjacentHTML('afterEnd',tag1);//添加到box的后面
    box.insertAdjacentHTML('beforeBegin',tag2);//添加到box的前面
    box.insertAdjacentHTML('beforeEnd',tag3);//添加到box里面的最前
    box.insertAdjacentHTML('afterBegin',tag4);//添加到box里面的最后
</script>
</html>


在以上代码中我们用到了insertAdjacentHTML方法,该方法有两个参数,第一个参数是添加的位置,第二个参数是要添加的字面量标签,即字符串类型的标签数据。
其中,第一个参数有4个,分别是afterEnd、beforeBegin、beforeEnd、afterBegin,以上代码中我们都做了注解,这里不再赘述。
执行结果如下:
javascript核心技术(二十七)原生JS的标签节点操作(二) 添加节点到DOM树
javascript核心技术(二十七)原生JS的标签节点操作(二) 添加节点到DOM树



二、通过JS动态创建的object类型的节点添加到页面中的方法
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id="box">
        <span id="span1"></span>
        <span id="span1"></span>
        <span id="span1"></span>
    </div>
</body>
<script>
    //1、JS语法创建一个标签
    var tag = document.createElement('div');
    //2、创建一个文本节点
    var text = document.createTextNode('hello');
    //3、将创建的文本节点 放到标签中
    tag.appendChild(text);
    // 通过js创建的标签要这样添加
    var box = document.getElementById('box'); 
    box.appendChild(tag); 
</script>
</html>

执行结果如下:
javascript核心技术(二十七)原生JS的标签节点操作(二) 添加节点到DOM树
javascript核心技术(二十七)原生JS的标签节点操作(二) 添加节点到DOM树

在以上的代码中,我们通过appendChild方法将一个object类型的节点添加到了id为box的div中的最后。
如果仅仅是想给页面中添加一个标签,通过js动态创建节点的操作比较麻烦,我们还是习惯于使用字面量的方法创建节点然后添加到页面中的方法。


易博软件介绍

0

主题

15

帖子

8

积分

营销入门

Rank: 2

积分
8
发表于 2023-2-17 00:06:39 | 显示全部楼层
楼主的想法确实值得我们学习!!!

0

主题

12

帖子

7

积分

营销入门

Rank: 2

积分
7
发表于 2023-3-2 04:02:02 | 显示全部楼层
感动感动

0

主题

20

帖子

11

积分

营销入门

Rank: 2

积分
11
发表于 2023-3-12 00:27:36 | 显示全部楼层
你写得很不错 我是新手 现在还不会写 但你说的 会让我少走很多弯路,是啊!变成要有想象力 失败了再爬起来!!我祝你工作顺利 祝我自己学习有成

0

主题

12

帖子

7

积分

营销入门

Rank: 2

积分
7
发表于 2023-3-22 05:03:40 | 显示全部楼层
对于一个程序员来说,这个确实很重要

0

主题

16

帖子

9

积分

营销入门

Rank: 2

积分
9
发表于 2023-3-27 16:58:33 | 显示全部楼层
感触很多!!!  在看这贴子前,我和你一样有同样的想法、同样的编程方法。。  而且我是个学生。  我很高兴看到这贴子,它能让我少走很多歪路!!!  

0

主题

14

帖子

8

积分

营销入门

Rank: 2

积分
8
发表于 2023-4-2 16:14:19 | 显示全部楼层
不管结果怎样,至少努力过.............

0

主题

12

帖子

7

积分

营销入门

Rank: 2

积分
7
发表于 2023-4-7 20:28:04 | 显示全部楼层
顶顶
发表于 2023-4-13 00:24:15 | 显示全部楼层
成功/对我来说,,成功就是一个新的起点,,什么叫成功,我才刚上路咧  引用发哥的话,。  无论什么时候,我们都要想的是一个新的起点,这样我们才不会满足现状,目标也会更清晰  现在的我自信心越来越膨胀,我感觉有种云里雾里的感觉可能得来太容易了,我发现我太狂了,言不由衷。  

0

主题

9

帖子

5

积分

营销入门

Rank: 2

积分
5
发表于 2023-4-18 01:32:56 | 显示全部楼层
让我深有感触,感觉自已差太多太多了   
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1、请认真发帖,禁止回复纯表情,纯数字等无意义的内容!帖子内容不要太简单!
2、提倡文明上网,净化网络环境!抵制低俗不良违法有害信息。
3、如果你对主帖作者的帖子不屑一顾的话,请勿回帖。谢谢合作!
3、问答求助区发帖求助后,如有其他用户热心帮您解决问题后,请自觉点击设为最佳答案按钮。

 
 
QQ在线客服
QQ技术支持
工作时间:
8:00-18:00
软著登字:
1361266号
官方微信扫一扫
weixin

QQ|小黑屋|Archiver|慈众营销 ( 粤ICP备15049986号 )|网站地图

自动发帖软件 | 自动发帖器 | 营销推广软件 | 网络营销工具 | 网络营销软件 | 网站推广工具 | 网络推广软件 | 网络推广工具 | 网页推广软件 | 信息发布软件 | 网站推广工具 | 网页推广软件

Powered by Discuz! X3.4   © 2012-2020 Comsenz Inc.  慈众科技 - Collect from 深圳吉宝泰佛文化有限公司 公司地址:罗湖区黄贝街道深南东路集浩大厦A1403

返回顶部 返回列表