既然說替換節點,那么舊的節點為何添加不了
<!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 newnode=document.createElement("i");
? ? ? ? ?var newnodeText=document.createTextNode("javaScript");
? ? ? ? ?newnode.appendChild(newnodeText);
? ? ? ? ?var oldnode=document.getElementById("oldnode");
? ? ? ? ?oldnode.parentNode.replaceChild(newnode,oldnode);
? ? ? ? ?var oldnodeText=document.createTextNode("nihahahha");
? ? ? ? ?oldnode.appendChild(oldnodeText);
??
? ? ? ?} ? ?
? </script>
??
?</body>
</html>
2016-08-20
我跟你說哈,雖然不是很懂你想干嘛,既然新節點替換了舊節點那么舊節點就不會再body結構里了,就不會有顯示了,你加點什么東西進去當然看不出什么區別,如果你想看去別的話,可以舊節點再換新節點,也可以body或其他地方添加子節點
2016-08-20
你沒有返回舊的結點,所以舊結點被刪除了,你可以
var a=oldnode.parentNode.replaceChild(newnode,oldnode)
來獲取舊結點,然后用a.innerHTML來修改你想換的內容