zoukankan      html  css  js  c++  java
  • DOM节点(二):操作节点

    appendChild()

    用于向childNodes列表的末尾添加一个节点。

    var returnedNode = someNode.appendChild(newNode);

    如果传入的节点已经是文档的一部分了,那结果就是将该节点从原来的位置转移到新位置

    insertBefore()

    这个方法接受两个参数:要插入到节点和作为参照的节点。插入节点后,被插入的节点会变成参照节点的前一个同胞节点(previousSibing)

    //插入到最后一个子节点的前面
    returnedNode = someNode.insertBefore(newNode, someNode.lastChild);

    replaceChild()

    这个方法接受两个参数:要插入的节点和要替换的节点。要替换的节点将由这个方法返回并从文档树中被移除,同时要插入的节点占据其位置。

    var returnedNode = someNode.replaceChild(newNode, someNode.firstChild);

     removeChild()

    这个方法接受一个参数,即要移除的节点。被移除的节点将成为方法的返回值

     var formerFirstChild = someNode.removeChild(someNode.firstChild);

    cloneNode()

    用于创建调用这个方法的节点完全相同的副本。cloneNode()方法接受一个布尔值参数,表示是否执行深复制。在参数为true的情况下,执行深复制,

    也就是复制节点及其整个子节点树;在参数为false的情况下,执行浅复制,即只复制节点本身

    <ul>
        <li>item 1</li>
        <li>item 2</li>
        <li>item 3</li>
    </ul> 
    var deepList = myList.cloneNode(true);
    console.log(deepList.childNodes.length); //3
    
    var shallowList = myList.cloneNode(false);
    console.log(shallowList.childNodes.length); //0
  • 相关阅读:
    装饰器结合cookie
    day12(输出重定向)
    day13(软件包管理)
    day11(acl权限/特殊属性/su与sudo)
    day10(权限)
    day09(用户管理)
    day08(打包压缩zip和tar)
    day07 文件管理(上传与下载/字符处理命令sort/uniq/cut与tr/wc)
    day06(find命令 name/size/type)
    day05(文件的修改vi和vim/移动文件mv/删除文件rm)
  • 原文地址:https://www.cnblogs.com/wzndkj/p/8722031.html
Copyright © 2011-2022 走看看