• JavaScript DOM基本操作


    前面讲了DOM查找节点方法;

    本文主要讲讲,通过JS新建、插入、替换等DOM的基本操作;

     


    (一)新建元素节点

    document.createElement('元素名');

    创建新的元素节点

    document.createTextNode('文本内容');

    创建新的文本节点

    document.createComment('注释节点');

    创建新的注释节点

    document.createDocumentFragment( );

    创建文档片段节点

     

     

     

     

     

     

     

    其中document.createElement()较为常用,需重点掌握;


     

    (二)添加元素节点

    通过上述create,只是创建而已,并没有真真添加,所以浏览器是显示不出来的。

    parent.appendChild( element/txt/comment/fragment );

    向父节点的最后一个子节点后追加新节点

    parent.insertBefore( newChild, existingChild );

    向父节点的某个特定子节点之前插入新节点

     

     

     

     

     1 <body>
     2     <div>
     3         <p></p>
     4         <em></em>
     5     </div>
     6 
     7 <script type="text/javascript">
     8     var div = document.getElementsByTagName('div')[0];
     9     var em = document.getElementsByTagName('em')[0];
    10 
    11     var strong = document.createElement('strong');
    12     div.appendChild(strong);
    13 
    14     var a = document.createElement('a');
    15     div.insertBefore(a,em);
    16 </script>

    结论:先创建在追加挂载;


     

    (三)删除元素节点

    parentNode.removeChild( existingChild );

    child.remove();

     

     1 <body>
     2     <div>
     3         <p></p>
     4         <span></span>
     5         <i></i>
     6         <a href="#"></a>
     7         <em></em>
     8     </div>
     9 
    10 <script type="text/javascript">
    11     var div = document.getElementsByTagName('div')[0];
    12     var span = document.getElementsByTagName('span')[0];
    13     var em = document.getElementsByTagName('em')[0];
    14 
    15     div.removeChild(span);//删除span标签
    16     em.remove();//删除em标签
    17 
    18 </script>
    19 </body>

    (四)替换元素节点

    parentNode.replaceChild( newChild, existingChild );

    用新节点替换父节点中已有的子节点

     

     

    此方法较为少用


     

     

    (四)修改/获取行间元素属性

    element.getAttribute('属性名') 

    方法返回指定属性名的属性值。
    element.removeAttribute('属性名'); 删除具有指定属性名称的属性,无返回值
    element.setAttribute( attributeName, attributeValue ); 若原元素已有该节点,此操作能达到修改该属性值的目的

     

     

     

     

     1 <body>
     2     <div class="red">
     3         <p></p>
     4         <span></span>
     5         <i></i>
     6         <a href="#"></a>
     7         <em></em>
     8     </div>
     9 
    10 <script type="text/javascript">
    11     var div = document.getElementsByTagName('div')[0];
    12     console.log(div.getAttribute('class'));
    13     div.setAttribute('id','only');
    14 </script>
    15 </body>

     

     

     

  • 相关阅读:
    解决Linux 环境 GLIBCXX_3.4.15' not found问题
    同步和异步接口,你还有疑惑么?
    SQL中内连接和外连接的区别
    Linux常用操作指令(面试专用)
    关于支付类的一些测试关注点及异常点
    jenkins持续集成 python selenium(windows本地)
    从ghost映像.gho文件快速创建vmware虚拟机
    阿里p3c(代码规范,eclipse插件、模版,idea插件)
    logback错误日志发送邮件
    C#中的异步陷阱
  • 原文地址:https://www.cnblogs.com/wood2012/p/7990270.html
Copyright © 2020-2023  润新知