我的定位:中高级人才(框架熟练、Java语法精通、数据库会用、Linux会用、中间件会用、有大数据经验!)
开始,我以为自己什么都知道。后来发现,其实我什么都不知道。

innerHTML和createTextNode的区别

innerHTML的用法

  tablerowObject.innerHTML

createTextNode的用法

  createTextNode(data)

  返回新创建的 Text 节点,表示指定的 data 字符串。

区别:1)  innerHTML属于HTML Dom

      createTextNode属于XML Dom

   2)  虽然效果类似但是在某种情况下是有区别的

var p=document.createElement("p");
p.className="message";
p.innerHTML="<b>I love js</b>";
document.body.appendChild(p);
var p=document.createElement("p");
p.className="message";   
var textnode=document.createTextNode("<b>I love js</b>");
p.appendChild(textnode);
document.body.appendChild(p);

 

在第一种情况下呈现出的效果是加粗的文本内容

而在第二种情况下呈现出的效果是<b>I love js</b>原文本。

所以两者的区别在于,innerHTML会将文本中包含的HTML代码实现效果,而createTextNode只是纯粹创造了文本节点,所以返回的效果也就是纯文本内容。

posted @ 2017-03-18 07:52  想太多先森  阅读(129)  评论(0编辑  收藏  举报