为了账号安全,请及时绑定邮箱和手机立即绑定

下面两段代码有什么区别?为什么效果不一样?

下面两段代码有什么区别?为什么效果不一样?

爱小LV3418421 2016-11-01 13:30:11
<body>   <div id="tst"><b id="oldnode">JavaScript</b>是一个很常用的技术,为网页添加动态效果。</div>   <a href="javascript:replaceMessage()"> 将加粗改为斜体</a>     <script type="text/javascript">       function replaceMessage(){         var newnode=document.createElement("i");             newnode.innerHTML="JAVA";         var oldnode=document.getElementById("oldnode");             oldnode.parentNode.appendChild(newnode);             oldnode.parentNode.replaceChild(newnode,oldnode);           }       </script>  </body>            <body>   <div id="tst"><b id="oldnode">JavaScript</b>是一个很常用的技术,为网页添加动态效果。</div>   <a href="javascript:replaceMessage()"> 将加粗改为斜体</a>     <script type="text/javascript">       function replaceMessage(){         var newnode=document.createElement("i");             newnode.innerHTML="JAVA";         var tst=document.getElementById("tst");         var oldnode=document.getElementById("oldnode");             tst.appendChild(newnode);             tst.replaceChild(newnode,oldnode);           }       </script>
查看完整描述

1 回答

?
qq_海阔天空_86

TA贡献2条经验 获得超0个赞

oldnode.parentNode.appendChild(newnode);表示oldnode的父节点添加一个孩子(newnode)

 tst.appendChild(newnode);表示tst添加一个孩子

tst本来就是oldnode的父节点。这两个效果是一样的。

查看完整回答
反对 回复 2016-11-01
  • 爱小LV3418421
    爱小LV3418421
    效果不一样, oldnode.parentNode.appendChild(newnode);这个点击那个替换,结果仅是替换了一下,再次点击没有变化; 而后面那种,第一次点击是替换,然后继续点击,在文本后面会继续添加斜体的JAAVA!
  • 1 回答
  • 0 关注
  • 979 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信