JavaScript HTML DOM 元素(節(jié)點)
創(chuàng)建HTML元素
var newEle =document.createElement(p);
創(chuàng)建的元素追加到別的元素之后:
A. appendChild(B): 若B是新建的元素,在A元素的所有子元素的末尾增加元素B 。
若B頁面中已存在的元素,則這句語句產(chǎn)生的效果是將B元素移動到了A的子元素中。
appendChild() 這個函數(shù)和innerHTML這個屬性的效果差不多,區(qū)別在:
1 innerHTML運(yùn)行效果會比appendChild慢(也許是需要解析的原因)
2 innerHTML比appendChild要方便些,像寫字符串似的
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <div id="div1"> <p id="p1">這是一個段落。</p> <p id="p2">這是另一個段落。</p> </div> <script> var para=document.createElement("p"); var node=document.createTextNode("這是一個新段落。"); para.appendChild(node); var element=document.getElementById("div1"); element.appendChild(para); </script> </body> </html>
例子解析:
這段代碼創(chuàng)建新的
元素:
var para=document.createElement("p");
如需向
元素添加文本,您必須首先創(chuàng)建文本節(jié)點。這段代碼創(chuàng)建了一個文本節(jié)點:
var node=document.createTextNode("這是一個新段落。");
然后您必須向
元素追加這個文本節(jié)點:
para.appendChild(node);
最后您必須向一個已有的元素追加這個新元素。
這段代碼找到一個已有的元素:
var element=document.getElementById("div1");
以下代碼在已存在的元素后添加新元素:
element.appendChild(para);
刪除HTML元素
removechild 函數(shù)可以刪除父元素的指定子元素。
如果此函數(shù)刪除子節(jié)點成功,則返回被刪除的節(jié)點,否則返回null。
語法結(jié)構(gòu):
fatherObj.removeChild(childrenObj)
參數(shù)解釋:
1.fatherObj:要刪除子元素的元素對象。
2.childrenObj:要被刪除的子元素對象。
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> </head> <body> <div id="div1"> <p id="p1">這是一個段落。</p> <p id="p2">這是另一個段落。</p> </div> <script> var parent=document.getElementById("div1"); var child=document.getElementById("p1"); parent.removeChild(child); </script> </body> </html>
實例解析
這個 HTML 文檔含有擁有兩個子節(jié)點(兩個 <p> 元素)的 <div> 元素:
<div id="div1"> <p id="p1">這是一個段落。</p> <p id="p2">這是另一個段落。</p> </div>
找到 id="div1" 的元素:
var parent=document.getElementById("div1");
找到 id="p1" 的
元素:
var child=document.getElementById("p1");
從父元素中刪除子元素:
parent.removeChild(child);