<div><b id="oldnode">JavaScript</b>是一个很常用的技术,为网页添加动态效果。</div>
<a href="javascript:replaceMessage()"> 将加粗改为斜体</a>
<script type="text/javascript">
function replaceMessage(){
var newnode=document.createElement("i");
var newnodeText=document.createTextNode("JavaScript");
newnode.appendChild(newnodeText);
var oldnode=document.getElementById("oldnode");
oldnode.replaceChild(newnode,oldnode) ;
}
</script>
我最后一句这样写为什么是错的呢?
replaceChild这个函数是替换孩子节点,如果不用parentNode.直接用old,这个函数就找不到其孩子节点。
要用它的父节点调用replaceChild
oldnode.parentNode.replaceChild(newnode,oidnode);