艾零
2017-07-26 10:09
function replaceMessage(){
var newnode = document.createElement("i");
/*newnode.innerHTML=document.getElmentById("oldnode").innerHTML;*/
var newnodeText = document.createTextNode("JavaScript");
newnode.appendChild(newnodeText);
var oldNode = document.getElementById("oldnode");
oldNode.parentNode.replaceChild(newnode,oldNode);
}
为什么替换时要创建一个文本节点,并将其插入到替换的节点后。我换种方法直接利用新节点的innerHTML属性设置设置文本内容不行?
function replaceMessage(){
var newnode = document.createElement("i");
newnode.innerHTML=document.getElmentById("oldnode").innerHTML;
/* var newnodeText = document.createTextNode("JavaScript");
newnode.appendChild(newnodeText); */
var oldNode = document.getElementById("oldnode");
oldNode.parentNode.replaceChild(newnode,oldNode);
}
而我在替换完成之后,又可以利用innerHTML改变内容了。
function replaceMessage(){
var newnode = document.createElement("i");
/* newnode.innerHTML=document.getElmentById("oldnode").innerHTML;
var newnodeText = document.createTextNode("JavaScript");
newnode.appendChild(newnodeText); */
var oldNode = document.getElementById("oldnode");
oldNode.parentNode.replaceChild(newnode,oldNode);
}
function replace(){
var node = document.getElementsByTagName("i");
node[0].innerHTML="JavaScript";
}
这是怎么回事?
function replaceMessage(){
var newnode = document.createElement("i");
newnode.innerHTML=document.getElementById("oldnode").innerHTML;
var oldNode = document.getElementById("oldnode");
oldNode.parentNode.replaceChild(newnode,oldNode);
}
我服了 慕课框架问题还是缓存机制问题 这又行了。
JavaScript进阶篇
468197 学习 · 21891 问题
相似问题