【28】DOM(節(jié)點的創(chuàng)建、添加、刪除、替換、克隆、document對象、documentFragment對象)

1 節(jié)點(元素)的創(chuàng)建、添加、刪除、替換、克隆

1.1 創(chuàng)建元素節(jié)點

新創(chuàng)建的元素需添加至DOM結構中,頁面上才能渲染出來。

document.createElement('標簽名'); //返回新創(chuàng)建的元素對象

1.2 添加子節(jié)點

① 在最后添加子節(jié)點

父元素.appendChild(新的子元素); 

② 指定位置添加子節(jié)點

父元素.insertBefore(新的子元素, 舊的子元素); //新的子元素插入到舊的子元素之前

1.3 刪除子節(jié)點

父元素.removeChild(要刪除的元素);

1.4 替換子節(jié)點

父元素.replaceChild(新的子元素,舊的子元素); //新的替換掉舊的

1.5 克隆節(jié)點

//方法返回克隆好的元素,參數默認為false(淺克?。褐豢寺≡乇旧恚硪粎禐閠rue(深度克?。涸丶捌浜蟠臀谋緝热荻伎梢员豢寺。?元素.cloneNode(); 

2 document對象

屬性:
document.all                獲取文檔中所有的元素,只讀
document.body               獲取body元素,只讀
document.documentElement     獲取html元素,只讀
document.lastModified        獲取文檔的最后一次修改時間,只讀
document.title              讀寫頁面標題,可讀可寫

方法:
document.write()                    輸出內容到頁面
document.getElementById()            通過ID名獲取元素
document.getElementsByTagname()       通過標簽名獲取元素
document.getElementsByClassname()     通過類名獲取元素
document.getElementsByName()          通過name屬性值獲取元素
document.querySelector()             通過選擇器獲取第一個滿足條件的元素
document.querySelectorAll()          通過選擇器獲取所有滿足條件的元素
document.creatElement()              創(chuàng)建一個元素節(jié)點
document.appendChild()               給document追加一個子元素
document.insertBefore()              在給document中的指定位置添加一個子元素
document.removeChild()               刪除document中的指定子元素
document.replaceChild()              替換document中的指定子元素
document.cloneNode()                 克隆一個document節(jié)點              

3 documentFragment對象

3.1 創(chuàng)建documentFragment 對象

document.createDocumentFragment(); //返回一個 documentFragment 類型的對象

3.2 documentFragment 對象的特點

1)documentFragment 也是一類節(jié)點, nodeType 是 11,它并不是元素,通常作為其他節(jié)點的一個臨時的容器。

2)可以給 documentFragment 對象添加子節(jié)點,documentFragment 節(jié)點也可以作為其他節(jié)點(元素)的子節(jié)點。

3)documentFragment 不是真實 DOM 樹的一部分,它的變化不會觸發(fā) DOM 樹的重新渲染,且不會導致性能等問題。

5.3 documentFragment 對象的應用

1)如果連續(xù)給一個元素添加多個子元素,可以先把子元素添加到 documentFragment 對象中,最后把 documentFragment 對象添加到父元素中,減少瀏覽器渲染次數。

2)利用 documentFragment 實現對一組元素進行倒序排列。

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容