js如何克隆一個節點物件
在實際的應用中,有時候需要複製一個節點物件,然後將複製的內容放置於一個指定的位置,好在js中就提供了這樣的函式,非常的方便,下面就做一下簡單的介紹,希望能夠給大家帶來一定的幫助。
有些人可能想到使用appendChild()函式,因為它可以將一個節點插入到指定元素內部的尾部,但是這裡特別注意的是,此函式是移動,而並非克隆,看下面的程式碼例項:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>元素的克隆例項程式碼-螞蟻部落</title> <style type="text/css"> ul{list-style:none} </style> <script type="text/javascript"> window.onload=function(){ var lis=document.getElementsByTagName("li"); var uls=document.getElementsByTagName("ul"); var bt=document.getElementById("bt"); bt.onclick=function(){uls[0].appendChild(lis[0]);} } </script> </head> <body> <ul> <li>螞蟻部落一</li> <li>螞蟻部落二</li> <li>螞蟻部落三</li> <li>螞蟻部落四</li> </ul> <input type="button" value="點選測試結果" id="bt" /> </body> </html>
由上面的程式碼表現可以看出,appendChild()函式是移動一個元素,並不是複製。
如果需要克隆一個元素,可以使用cloneNode(),下面做一下簡單介紹。
語法結構:
[JavaScript] 純文字檢視 複製程式碼object.cloneNode(bCloneChildren )
此函式可以克隆object物件,也就是建立一個副本。
它具有一個布林型的引數,如果是true的話就同時克隆object下的子元素,如果為false就不克隆子元素。
例項程式碼如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>元素的克隆例項程式碼-螞蟻部落</title> <style type="text/css"> ul{list-style:none} </style> <script type="text/javascript"> window.onload=function(){ var lis=document.getElementsByTagName("li"); var uls=document.getElementsByTagName("ul"); var bt=document.getElementById("bt"); bt.onclick=function(){ var newli=lis[0].cloneNode(lis[0]); uls[0].appendChild(newli); } } </script> </head> <body> <ul> <li>螞蟻部落一</li> <li>螞蟻部落二</li> <li>螞蟻部落三</li> <li>螞蟻部落四</li> </ul> <input type="button" value="點選測試結果" id="bt" /> </body> </html>
相關文章
- js克隆一個物件JS物件
- jQuery如何複製克隆一個元素節點jQuery
- javascript如何實現複製克隆一個dom元素節點JavaScript
- javascript如何建立一個屬性節點物件JavaScript物件
- 原生javascript如何刪除一個元素節點物件JavaScript物件
- js深度克隆物件JS物件
- JavaScript cloneNode() 克隆節點JavaScript
- js物件的深度克隆!JS物件
- 物件如何深度克隆物件
- 如何讓 MGR 不從 Primary 節點克隆資料?
- js之物件深淺克隆JS物件
- JS物件深度克隆/複製JS物件
- JS型別判斷、物件克隆、陣列克隆JS型別物件陣列
- javascript如何建立一個文字節點JavaScript
- 原生js實現物件的深克隆以及淺克隆JS物件
- 一個克隆物件的C#基類 (轉)物件C#
- 在 JavaScript 中如何克隆物件?JavaScript物件
- 利用jQuery如何刪除一個節點jQuery
- js如何判斷一個物件是否存在JS物件
- 如何實現物件的深度克隆物件
- 如何執行一個 Conflux 節點UX
- 如何使用castor訪問父節點物件????AST物件
- js獲取節點元素物件的方法介紹JS物件
- 物件的克隆——原型模式(一)物件原型模式
- jquery如何新增一個新的元素節點jQuery
- 填充每個節點的下一個右側節點指標指標
- js如何判斷節點的型別JS型別
- DOM(文件物件模型)的12個節點型別物件模型型別
- css 定位如何依次定位多個節點下面的子節點CSS
- 安利一個js節流庫JS
- js用字首名查詢class或id節點,js模糊查詢某個dom節點JS
- 填充每個節點的下一個右側節點指標 II指標
- 如何判斷一個js物件是否存在迴圈引用JS物件
- javascript 深度克隆物件JavaScript物件
- RAC一個節點恢復另一個節點在帶庫上的備份
- js中深克隆與淺克隆JS
- js如何判斷一個變數是物件還是nullJS變數物件Null
- js 深度克隆JS