问答详情
源自:9-15 替换元素节点replaceChild()

函数调用问题

将原文中的<a href="javascript:replaceMessage()"> 将加粗改为斜体</a>删除后,替换并没有进行,那么是不是可以认为replacechild一定需要调用才可以显示效果,而不能直接替换原有文本?

提问者:雪影星辰 2017-03-01 15:37

个回答

  • 慕函数2305665
    2017-03-01 16:01:13

    <!DOCTYPE HTML>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>无标题文档</title>
    </head>
    <body>


      <div><b id="oldnode">JavaScript</b>是一个很常用的技术,为网页添加动态效果。</div>

     
        <script type="text/javascript">
      
             var newnode=document.createElement("i");
             var oldnode=document.getElementById("oldnode");
             newnode.innerHTML=oldnode.innerHTML;
             oldnode.parentNode.replaceChild(newnode,oldnode);

      </script>
     
     </body>
    </html>

    <!--这样写代码则是直接替换。看不到替换前后的变化而已-->


  • 慕函数2305665
    2017-03-01 15:58:06

    因为替换原文本的指令在replaceMessage()函数中,删除函数调用就是没有运行替换原文本的指令。系统用函数调用方法大概是让我们看看替换指令的效果吧