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

哪里出问题了

<script type="text/javascript">

      function replaceMessage(){

         var oldnode=document.getElementsTagName("b");

         var oldHTML= oldnode.innerHTML;

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

         oldnode.parentNode.replaceChild(newnode,oldnode);

         newnode.innerHTML=oldHTML;

       }    

  </script>


正在回答

3 回答

<script type="text/javascript">
      function replaceMessage(){
         var oldnode=document.getElementsTagName("b");
         // 注1
         var oldHTML= oldnode.innerHTML;
         var newnode=document.createElement("i");
         oldnode.parentNode.replaceChild(newnode,oldnode);
         newnode.innerHTML=oldHTML;
       }    
  </script>

注1 :getElementsTagName 写错了    正确写法 getElementsByTagName  意思是:返回带有制定标签名的节点的对象的集合。返回元素的顺序是他们在文档的顺序。getElementsByTagName 在这里返回的是一个数组而我们需要用到的是getElementById, 通过ID获取指定的元素。

正确的写法是  

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



0 回复 有任何疑惑可以回复我~

<script type="text/javascript">

      function replaceMessage(){

         var oldnode=document.getElementsByTagName("b");

         var oldHTML= oldnode[0].innerHTML;

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

         oldnode[0].parentNode.replaceChild(newnode,oldnode[0]);

         newnode.innerHTML=oldHTML;

       }    

  </script>

getElementsTagName不对,是getElementsByTagName

还有getElementsByTagName得到的是一个数组

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468046    人
  • 解答问题       21891    个

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

进入课程

哪里出问题了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信