资讯详情

【JavaScript】DOM增删改的操作

??作者简介:苏凉(专注于网络爬虫、数据分析,正在学习前端) ??主页:苏凉.py的博客 ??系列总专栏:web前端基础教程 ??名言警句阔凭鱼跃,天高任鸟飞。 ??如果你认为博主的文章写得很好,我希望你能连续三次支持它! ??关注点赞收藏

文章目录

    • 本期实现功能
    • 增加子节点(appendChild)
    • 在指定的子节点之前添加一个新节点(insertBefore)
    • 替换子节点(replaceChild)
    • 删除指定节点(removeChild)
    • 优化:与innerHTML结合使用修改元素(更高效)
    • 完整代码

我们期我们说了DOM让我们来看看查询操作。DOM的增删改。

上传送门: ??DOM查询(上) ??DOM查询(下)

本期实现功能

在这里插入图片描述

增加子节点(appendChild)

将新的子节点添加到指定节点

window.onload = function(){ 
            document.getElementById('bt1').onclick = function(){ 
                //创建一个li节点        var addli1 = document.createElement('li');        ///创建城市文本节点        var citytext = document.createTextNode('浙江');        ///设置文本节点li字节点的节点        addli1.appendChild(citytext);        //获取ul        var ul = document.getElementById('uls');        //将li设置为ul的子节点        ul.appendChild(addli1);    } } 

在指定的子节点之前添加一个新节点(insertBefore)

语法:父节点.insertBefore(新节点,指定节点);

window.onload = function(){ 
            document.getElementById('bt2').onclick = function/span>(){ 
          //创建一个li节点 var addli2 = document.createElement('li'); //创建一个文本节点 var citytext = document.createTextNode('四川'); //将文本节点设置为li的子节点 addli2.appendChild(citytext); //获取贵阳的li节点 var guiyang = document.getElementById('guiyang'); //获取ul节点 var ul = document.getElementById('uls'); //在贵阳之前插入li ul.insertBefore(addli2,guiyang); } } 

替换子节点(replaceChild)

语法:父节点.replaceChild(新节点,旧节点);

window.onload = function(){ 
        
  document.getElementById('bt3').onclick = function(){ 
        
     //创建一个li节点
       var addli2 = document.createElement('li');
       //创建一个文本节点
       var citytext = document.createTextNode('江西');
       //将文本节点设置为li的子节点
       addli2.appendChild(citytext);
       //获取贵阳的li节点
       var guiyang = document.getElementById('guiyang');
       //获取ul节点
       var ul = document.getElementById('uls');
       //替换贵阳子节点
       ul.replaceChild(addli2,guiyang);
   }
}

删除指定节点(removeChild)

语法:父节点.removeChild(子节点);

window.onload = function(){ 
        
   document.getElementById('bt4').onclick = function(){ 
        
        //找到天津这个节点
        var tj = document.getElementById('tj');
        //获取它的父节点
        var parent =document.getElementById('uls');
        //删除
        parent.removeChild(tj);
   }
}

优化:与innerHTML结合使用修改元素(更高效)

window.onload = function(){ 
        
   document.getElementById('bt5').onclick = function(){ 
        
       //创建一个li节点
       var li = document.createElement('li');
       //使用innerHTML写入文本
       li.innerHTML="江苏";
       //获取父节点
       var ul = document.getElementById('uls')
       //将设置为ul的子节点
       ul.appendChild(li);
   }
}            

完整代码

<!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>
    <script> window.onload = function(){ 
           document.getElementById('bt1').onclick = function(){ 
           //创建一个li节点 var addli1 = document.createElement('li'); //创建一个城市文本节点 var citytext = document.createTextNode('浙江'); //将文本节点设置为li节点的字节点 addli1.appendChild(citytext); //获取ul var ul = document.getElementById('uls'); //将li设置为ul的子节点 ul.appendChild(addli1); } document.getElementById('bt2').onclick = function(){ 
           //创建一个li节点 var addli2 = document.createElement('li'); //创建一个文本节点 var citytext = document.createTextNode('四川'); //将文本节点设置为li的子节点 addli2.appendChild(citytext); //获取贵阳的li节点 var guiyang = document.getElementById('guiyang'); //获取ul节点 var ul = document.getElementById('uls'); //在贵阳之前插入li ul.insertBefore(addli2,guiyang); } document.getElementById('bt3').onclick = function(){ 
           //创建一个li节点 var addli2 = document.createElement('li'); //创建一个文本节点 var citytext = document.createTextNode('江西'); //将文本节点设置为li的子节点 addli2.appendChild(citytext); //获取贵阳的li节点 var guiyang = document.getElementById('guiyang'); //获取ul节点 var ul = document.getElementById('uls'); //替换贵阳子节点 ul.replaceChild(addli2,guiyang); } document.getElementById('bt4').onclick = function(){ 
           //找到天津这个节点 var tj = document.getElementById('tj'); //获取它的父节点 // var parent =document.getElementById('uls'); // //删除 // parent.removeChild(tj); //另外一种方法 tj.parentNode.removeChild(tj); } document.getElementById('bt5').onclick = function(){ 
           //创建一个li节点 var li = document.createElement('li'); //使用innerHTML写入文本 li.innerHTML="江苏"; //获取父节点 var ul = document.getElementById('uls') //将设置为ul的子节点 ul.appendChild(li); } } </script>

    <style> .box{ 
           display: inline-block; background-color: lightblue; } li{ 
           display: inline-block; background-color: lightgoldenrodyellow; margin: 10px; } .box2{ 
           display: inline-block; } button{ 
           display: block; } </style>
</head>
<body>
    <div class="box">
        <p>常驻城市:</p>
        <ul id="uls">
            <li id="tj">天津</li>
            <li id="guiyang">贵阳</li>
            <li>重庆</li>
            <li>北京</li>
        </ul>
    </div>
    <div class="box2">
        <button id="bt1">添加一座城市</button>
        <button id="bt2">在贵阳这个城市之前加入一座城市</button>
        <button id="bt3">加一个新的城市替换贵阳</button>
        <button id="bt4">删除天津</button>
        <button id="bt5">使用innerHTML修改</button>
    </div>
</body>
</html>

标签: bt3六盘水仪表变送器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台