• JavaScript操作DOM元素的一些基础方法与属性


    (一)cloneNode()方法

    该方法在使用会返回一个它复制得到后的一个节点副本,传参为boolean类型,如果传递一个true那么它将递归复制当前节点的全部子孙节点,否则它只会复制当前节点。

    1. "app">
    2. <span class="One">
    3. 你好
    4. span>
    5. <div class="One">
    6. 哈哈
    7. div>
    8. <p class="Two">
    9. 不好
    10. p>
  • <script>
  • let a = document.querySelector('#app') //获取id为app的第一个DOM元素
  • let b = a.cloneNode(true);
  • console.log(b);
  • let c = a.cloneNode(false);
  • console.log(c);
  • let d = a.cloneNode();
  • console.log(d);
  • script>
  •  

    (二)childNodes属性

    该属性以NodeList的形式返回一个包含该节点的子节点集合,需要注意的是它会返回所有类型的节点包含注释节点和文本节点等。

    1. "app">
    2. <span class="One">
    3. <div>你好div>
    4. <div>456div>
    5. span>
    6. <div class="One">
    7. 哈哈
    8. div>
    9. <p class="Two">
    10. 不好
    11. p>
  • <script>
  • let a = document.querySelector('#app') //获取id为app的第一个DOM元素
  • console.log(a.childNodes)
  • script>
  •  

    (三)nodeType属性

    nodeType会判断该节点为什么节点,返回一个数值,如果节点是一个元素节点,返回 1。如果节点是属性节点,返回 2。如果节点是一个文本节点,返回 3。如果节点是一个注释节点,返回 8。

    1. "app">
    2. <span class="One">
    3. <div>你好div>
    4. <div>456div>
    5. span>
    6. <div class="One">
    7. 哈哈
    8. div>
    9. <p class="Two">
    10. 不好
    11. p>
  • <script>
  • let a = document.querySelector('#app') //获取id为app的第一个DOM元素
  • for(let i=0;ichildNodes.length;i++){
  • console.log(a.childNodes[i].nodeType)
  • }
  • script>
  •  

    (四)nodeValue属性

    nodeValue会根据节点的类型来返回节点的值,通常用来返回元素的文本。

    1. "app">
    2. 123
    3. class="One">
    4. <div>你好div>
    5. <div>456div>
    6. <div class="One">
    7. 哈哈
    8. div>
    9. <p class="Two">
    10. 不好
    11. p>
  • <script>
  • let a = document.querySelector('#app') //获取id为app的第一个DOM元素
  • for(let i=0;ichildNodes.length;i++){
  • console.log(a.childNodes[i].nodeValue)
  • }
  • script>
  •  

    (五)parentNode属性 

    parentNode属性会返回该节点的父节点,如果该节点没有父节点,那么就返回null。

    (六) replaceChild方法

    replaceChild(a,b)可以将某个子节点替换为另一个。里面必须传递两个参数,前一个a你要插入的节点对象,后一个b你要移除的节点对象。

    1. "app">
    2. 你好
    3. <div id="root">
    4. 不好
    5. div>
    6. <script>
    7. let tmp=document.querySelector('#app')
    8. let tmpNode=tmp.cloneNode(true)
    9. root.parentNode.replaceChild(tmpNode,root)
    10. script>

     

  • 相关阅读:
    中秋将至,通过代码实现嫦娥奔月庆祝佳节
    【LeetCode每日一题合集】2023.9.11-2023.9.17(⭐反悔贪心&拓扑排序&Floyd)
    halcon测量
    NEON优化:性能优化经验总结
    Swift开发基础06-闭包
    【Python】正则表达式判断是否存在连续相同的两个字符,连续两个字符一模一样
    【css】css奇数、偶数、指定数选择器:
    Pandas怎样结合Pyecharts绘制交互性折线图
    tag单调栈-单调栈预备知识-lt.739. 每日温度
    C++ 并发编程实战 第八章 设计并发代码 二
  • 原文地址:https://blog.csdn.net/qq_58159494/article/details/132625925