JavaScript HTML...LOGIN

JavaScript HTML DOM 元素

JavaScript HTML DOM 元素

建立新的HTML 元素

建立新的HTML 元素

如需在HTML DOM 中建立新元素,您必須先建立該元素(元素節點),然後再向一個已存在的元素追加該元素。

<!DOCTYPE html> 
<html> 
<meta charset="utf-8">
<body>
 <div id="div1"> 
<p id="p1">This is a paragraph.</p>
 <p id="p2">This is another paragraph.</p>
 </div> 
<script>
 var para=document.createElement("p"); 
var node=document.createTextNode("This is new."); 
para.appendChild(node); 
var element=document.getElementById("div1"); 
element.appendChild(para); 
</script> 
</body>
 </html>

範例解析: 

這段程式碼建立新的<p> 元素:

var para=document.createElement("p");

如需在<p> 元素中新增文本,您必須先建立文本節點。這段程式碼建立了一個文字節點:

var node=document.createTextNode("This is a new paragraph.");

然後您必須向<p> 元素追加這個文字節點:

para.appendChild(node);

最後您必須向一個現有的元素追加這個新元素。

這段程式碼找到一個已有的元素:

var element=document.getElementById("div1");

以下程式碼在已存在的元素後來新增元素:

element.appendChild(para);

#刪除現有的HTML 元素

這段程式碼向這個現有的元素追加新元素:

<!DOCTYPE html>
 <html>
 <meta charset="utf-8">
 <body>
  <div id="div1">
 <p id="p1">This is a paragraph.</p> 
<p id="p2">This is another paragraph.</p> 
</div>
 <script>
 var parent=document.getElementById("div1"); 
var child=document.getElementById("p1");
 parent.removeChild(child); 
</script>
 </body> 
</html>

這個HTML 文件含有兩個子節點(兩個<p> 元素)的<div> 元素:

<div id="div1">
 <p id="p1">This is a paragraph.</p>
 <p id="p2">This is another paragraph.</p>
 </div>

找到id="div1" 的元素:

var parent=document.getElementById("div1");

找到id="p1" 的<p> 元素:

var child=document. getElementById("p1");

從父元素中刪除子元素:

parent.removeChild(child);

如果能夠在不引用父元素的情況下刪除某個元素,就太好了。
不過很遺憾。 DOM 需要清楚您需要刪除的元素,以及它的父元素。

這是常用的解決方案:找到您希望刪除的子元素,然後使用其parentNode 屬性來找到父元素:

var child=document.getElementById( "p1");
child.parentNode.removeChild(child);

HTML DOM 教學

在我們的JavaScript 教學的HTML DOM 部分,您已經學到了:

如何改變HTML 元素的內容(innerHTML)如何改變HTML 元素的樣式(CSS)如何對HTML DOM 事件作出反應如何新增或刪除HTML 元素


下一節
<!DOCTYPE html> <html> <meta charset="utf-8"> <body> <div id="div1"> <p id="p1">This is a paragraph.</p> <p id="p2">This is another paragraph.</p> </div> <script> var para=document.createElement("p"); var node=document.createTextNode("This is new."); para.appendChild(node); var element=document.getElementById("div1"); element.appendChild(para); </script> </body> </html>
章節課件