• 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>

     

  • 相关阅读:
    Session-based Recommendation with Graph Neural Networks论文阅读笔记
    星火大模型AI接口Spring中项目中使用【星火、AIGC】
    springboot基于web儿童教育网站111123
    pytorch深度学习实战lesson16
    Android通过jni调用本地c/c++接口方法总结
    Python基础语法(一)——变量定义和运算符的使用
    SQL-正则表达式
    发现区块链世界的新大门——AppBag.io DApp导航网站全面解析
    代码随想录算法训练营Day61 | 总结和展望 | Python | 个人记录向
    PyTorch深度强化学习中蒙特卡洛策略梯度法在短走廊环境(CartPole-v0)中的实战(超详细 附源码)
  • 原文地址:https://blog.csdn.net/qq_58159494/article/details/132625925