• JS--操作DOM树


    <ul id="ul1">
    <li id="li1">111</li>
    <li id="li2">222</li>
    <li id="li3">333</li>
    <li id="li4">444</li>
    </ul>
    <div id="div1"></div>
    <br />
    <input type="button" onclick="insert1();" value="insert" />
    <input type="button" onclick="remove1();" value="remove" />
    <input type="button" onclick="replace1();" value="replace" />
    <input type="button" onclick="cloneNode1();" value="clone" />
    <script type="text/javascript">
    /*操作DOM树
    insertBefore(newNode,oldNode):在节点之前加入新节点
    removeChild(delNode):通过父节点删除子节点,不能自己删除自己
    replaceChild(newNode,oldNode):替换节点 第一个参数:替换成的节点,第二个参数:被替换的节点 必须使用父节点进行替换,不能自己替换自己
    cloneNode(boolean):是否复制,是true,否,FALSE
    */

    function insert1() {
    //获得ul根节点
    var ul1 = document.getElementById("ul1");
    //创建li
    var li5 = document.createElement("li");
    //创建文本
    var text5 = document.createTextNode("555");
    //把文本添加到li下面
    li5.appendChild(text5);
    //获得同级li
    var li4 = document.getElementById("li4");
    //把li添加到ul下面 insertBefore(newNode,oldNode);在节点之前加入新节点
    ul1.insertBefore(li5, li4);

    }

    function remove1() {
    //获得需要删除的节点
    var li3 = document.getElementById("li3");
    //获得ul根节点,2种方式
    var ul1 = document.getElementById("ul1");
    var ul2 = li3.parentNode;

    //通过父节点删除子节点,不能自己删除自己
    ul2.removeChild(li3);
    }

    function replace1() {

    //获得根节点
    var ul = document.getElementById("ul1");
    //获得被替换的li子节点
    var li2 = document.getElementById("li2");
    //创建li标签
    var li5 = document.createElement("li")
    //创建新的li文本
    var text5 = document.createTextNode("yyy");
    //把文本添加到li下面
    li5.appendChild(text5);
    //replaceChild(newNode,oldNode)方法,替换节点 第一个参数:替换成的节点,第二个参数:被替换的节点 必须使用父节点进行替换,不能自己替换自己
    ul.replaceChild(li5, li2);

    }

    function cloneNode1(){
    /*
    1、获得ul
    2、执行复制方法cloneNode方法复制true
    3、把复制之后的内容放到div里面去
    获取到div
    appendChild方法
    */
    //获得根节点
    var ul=document.getElementById("ul1");
    //执行复制方法,复制ul
    var ulcopy=ul.cloneNode(true);
    //把复制之后的内容放到div里面
    var div1=document.getElementById("div1");
    div1.appendChild(ulcopy);
    }
    </script>

  • 相关阅读:
    人月神话阅读笔记03(完)
    人月神话阅读笔记02
    各种前端好用的在线工具、学习网站、插件
    垂直居中css
    输入框判断表情的输入js
    jq九宫格抽奖
    移动端中一像素的解决方案
    获取url地址栏中的参数数据
    ios中getTime()的兼容性问题
    清除Css中select的下拉箭头样式
  • 原文地址:https://www.cnblogs.com/xiqoqu/p/9058407.html
Copyright © 2020-2023  润新知