插入節點(appendChild())


appendChild():方法將給元素節點追加一個子節點:

reference = element.appendChild(newChild);

如上所示,給定節點newChild將成為給定元素節點element的最后一個子節點,這個方法的返回值是一個新增子節點的引用指針。

這個方法通常與創建新節點的createElement()和createTextNode()方法配合使用。

在下面的例子中,第一條語句用createElement()方法創建了一個para文本段元素,第二條語句用createTextNode()方法創建了一個message文本節點,第三條語句用appendChild()方法把message文本節點插入了para元素節點:

var para = document.createElement("p");
var message = document.createTextNode("hello world");
para.appendChild(message);

接下來在此使用appendChild()方法,但這次把para元素插入文檔的結構:

document.body.appendChild(para);

上面的語句把para元素追加給文檔中body元素。

新節點可被追加給文檔中的任意一個元素。在下例中,我們把新的文本節點追加了當前文檔中那個id屬性值是headline的元素:

var message = document.createTextNode("hello world");
var container = document.getElementById("headline");
container.appendChild(message);

現在container元素的lastChild屬性將被刷新為包含着文本“hello world”的新增文本節點。

appendChild()方法不僅樂意追加新創建元素,還可以用來挪動文檔中的現有元素。

在下面的例子中,第一條語句將去尋找id屬性值是content的元素,第二條將去尋找id屬性值是fineprint的元素,第三條語句將把fineprint元素從他當前位置剪切下來追加到content元素末尾:

var message = document.getElementById("fineprint");
var container = document.getElementById("content");
container.appendChild(message);

注意,id屬性值是fineprint的元素將先從文檔上被刪除,然后在作為content元素的最后一個子節點被重新出插入到新位置。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM