为什么这样写不行?

<!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 ord=document.getElementById("oldnode");

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

       ord.innerHTML=nw.innerHTML

      ord.parentNode.replaceChild(nw,ord)   

       }    

  </script>

   </body>

</html>

为什么只是消失了而不是变成斜体呢?

qq_牧月云_0
浏览 1495回答 2
2回答

慕莱坞9220042

你好,document.createElement("i");这个是创建一个新的节点的方法,你这样相当于加了一个新的节点把以前的给覆盖了,而且没有设置新的内容,所以消失了,你要实现将制定文本变为加上斜体效果,可以用这个:“ord.style.fontStyle="italic";”直接设置样式就可以了;望采纳!

Caballarii

nw.innerHTML=ord.innerHTML你写反了吧
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript