大佬们帮我看看我的代码到底问题在哪,一模一样还是运行出来没有效果

来源:9-15 替换元素节点replaceChild()

本木源

2017-10-27 21:05

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

  <a href="javascript:replaceMessage()"> 将加粗改为斜体</a>

  

    <script type="text/javascript">

      function replaceMessage(){

        var newnode=document.createElement("i");

        var oldnode=document.getElementById("oldnode");

        newnode.innerHTML=oldnode.innerHTML;

        newnode.parentNode.replaceChild(newnode,oldnode);

          

      }    

  </script>

  

 </body>

</html>


写回答 关注

1回答

  • 慕斯卡8036547
    2017-10-29 22:46:52

    问题出在最后一行 ,newnode这个节点都还没有被替换进去 ,所以nownode的父节点也是不存在的,应该用oldnode.parentNode。

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468061 学习 · 21891 问题

查看课程

相似问题