2016-06-24 24 views
0

我正在處理一些東西,同時我進入了一些我不明白其背後的核心原因。整個文檔克隆不工作在JavaScript

我的想法(好或壞)是克隆一個文檔並添加修改,然後重新分配我的克隆對象插入到文檔

var tu=document.clone(true); 
getComputedStyles(document)//returns all current css values 
tu.getElementsByTagName("body")[0].style.backgroundColor="yellow";//when i print tu and inspect style is visible on body 
tu.getElementsByTagName("body")[0].style.width="100px"; 
getComputedStyles(tu)//returns all empty values. 

document=tu; 

但是,如果沒有錯誤的每一步回報,但分配TU記錄後,我身體bgColor仍然是白色的。

爲什麼getComputedStyles()返回空值呢?

+1

您可以發佈您'clone'功能?你的'getComputedStyles(document)'是如何工作的,而'document'不是一個元素? – choz

+0

這只是createClone功能 –

回答

0

window.document是不可寫的。

+0

那麼我如何克隆整個文件,並進行操作? –

+0

@bharathmuppa您可以重新分配零件,例如身體。 – zeroflagL

1

最後我得到的東西,這可能是有用的

var documentClone=document.clone(true); 
documentClone.body.style.background="yellow"; 
documentClone.body.style.background="red";`\\many number of operations` 


//after many changes 
document.replaceChild(documentClone.documentElement,document.documentElement); 
//now you can find all your changes..