javascript 拷貝節(jié)點(diǎn)cloneNode()使用介紹
更新時(shí)間:2014年04月03日 17:05:26 作者:
這篇文章主要介紹了javascript 節(jié)點(diǎn)操作拷貝節(jié)點(diǎn)cloneNode()的使用,需要的朋友可以參考下
cloneNode(a)方法接受一個(gè)布爾值參數(shù),表示是否深拷貝
true:表示執(zhí)行深拷貝,復(fù)制本節(jié)點(diǎn)以及整個(gè)子節(jié)點(diǎn)樹(shù).
false:淺拷貝.只復(fù)制節(jié)點(diǎn)本身.
復(fù)制后返回的節(jié)點(diǎn)副本屬于文檔所有,但是并沒(méi)有父節(jié)點(diǎn).除非使用appendChild,insertChild(),replaceChild()將它添加到文檔
<div id="guoDiv">
<span>1</span>
<span>2</span>
<span>3</span>
</div>
var oDiv = document.getElementById("guoDiv");
var deepList = oDiv.cloneNode(true); //拷貝子節(jié)點(diǎn)
alert(deepList.childNodes.length); //3或7(兼容性問(wèn)題,所以結(jié)果不一樣)
var showList = oDiv.cloneNode(false); //只拷貝當(dāng)前元素的引用
alert(showList.childNodes.length); //0
true:表示執(zhí)行深拷貝,復(fù)制本節(jié)點(diǎn)以及整個(gè)子節(jié)點(diǎn)樹(shù).
false:淺拷貝.只復(fù)制節(jié)點(diǎn)本身.
復(fù)制后返回的節(jié)點(diǎn)副本屬于文檔所有,但是并沒(méi)有父節(jié)點(diǎn).除非使用appendChild,insertChild(),replaceChild()將它添加到文檔
復(fù)制代碼 代碼如下:
<div id="guoDiv">
<span>1</span>
<span>2</span>
<span>3</span>
</div>
var oDiv = document.getElementById("guoDiv");
var deepList = oDiv.cloneNode(true); //拷貝子節(jié)點(diǎn)
alert(deepList.childNodes.length); //3或7(兼容性問(wèn)題,所以結(jié)果不一樣)
var showList = oDiv.cloneNode(false); //只拷貝當(dāng)前元素的引用
alert(showList.childNodes.length); //0
相關(guān)文章
詳解JavaScript實(shí)現(xiàn)監(jiān)聽(tīng)路由變化
前端實(shí)現(xiàn)路由變化主要有兩種方式,本文主要介紹了這兩種方法的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-08-08
使用layer.msg 時(shí)間設(shè)置不起作用的解決方法
今天小編就為大家分享一篇使用layer.msg 時(shí)間設(shè)置不起作用的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09
JS實(shí)現(xiàn)商品倒計(jì)時(shí)實(shí)現(xiàn)代碼
JS實(shí)現(xiàn)商品倒計(jì)時(shí)實(shí)現(xiàn)代碼,需要的朋友可以參考一下2013-05-05

