2017-01-26 41 views
0

我正在嘗試執行一些<div>操作,刪除一些並添加其他操作。我有一個父<div>在它的一些<div> S:如何確保使用appendChild交錯的div

<div id='parentdiv' style='width:100%;height:100%;overflow:auto;'> 
    <div id = 'div1' style='width:100%;height:400px;'> 
     <canvas></canvas> 
    </div> 
    <div id='div2' style='width:100%;height:400px;'> 
     <canvas></canvas> 
    </div> 
    <div id='div3' style='width:100%;height:400px;'> 
     <canvas></canvas> 
    </div> 
</div> 

當最初被創建<div>就是他們都分離如預期的,即交錯underneith彼此。如果然而,我刪除所有的初始<div> S的是這樣的:

var elem = document.getElementById("div" + c); 
if (elem != null) { 
    elem.parentNode.removeChild(elem); 
} 

並將它們添加回像這樣:

var elem = document.getElementById("parentdiv"); 
var d = document.createElement("div"); 
d.id = "div" + c; 
d.style = "width:100%;height:400px;"; 
elem.appendChild(d); 

<div>小號似乎在同一空間相互疊放而不是錯開。我如何讓他們錯開,我錯過了一個參數?

+0

你是什麼意思由錯開? – Ibu

+0

請澄清「交錯」和張貼完整的代碼,也是一個https://jsfiddle.net/小提琴將幫助 – Si8

+0

交錯我的意思是內容divs顯示彼此分開,而不是像堆疊像每個頂部的煎餅其他 – aggaton

回答

0

懷着希望去阻止別人做同樣的錯誤,像我一樣,設置一個div的風格無法通過字符串處理,每個單獨的屬性需要設置這樣

d.style.width = "100%"; 
d.style.height = "400px"; 

所以樣式設置爲基本上被忽略了,即他們沒有佔用空間。