2013-04-23 37 views
1

我有一個html div,它下面有大約6個div。當我刪除該div上的子項時,其他div是否未分配,還是必須先刪除它們? div是動態創建的。內存是否爲孩子自動清理div?

var window = document.createElement('div'); 

然後我添加更多的元素。稍後在某些時候,我想刪除這些div,並使用頂級div上的removeElement來完成此操作。這是否會導致瀏覽器內存問題?如果是這樣,我會認爲我必須先刪除每個孩子。

+0

你爲什麼不試試? – 2013-04-23 13:17:36

+3

你在說什麼? – lvella 2013-04-23 13:17:39

+0

你在說什麼div,HTML div?你使用什麼編程語言?請添加相關標籤到您的問題,並考慮向我們展示一些代碼 – zakinster 2013-04-23 13:21:45

回答

3

很簡短的答案是...是的(因爲你不需要手工操作)和否(因爲它不是你想象的那樣完成的),但是不要擔心。

你的html代碼到目前爲止已經從實際的內存管理中抽象出來了,它並不是一個真正有效的問題。

當元素從DOM中刪除時,它們的所有子節點也被刪除。添加一個元素不會直接分配一塊內存 - 它會將一個節點添加到DOM,然後由渲染過程使用該節點。節點的大小通常很小。

當一個節點被移除時,瀏覽器可能不會釋放內存,因爲DOM本身仍然活動,但您不應該擔心。您唯一真正關心的是同時呈現/處理的元素數量。

+0

我覺得是這種情況。 C++編碼器witting html是不好的;)Thx爲直接答案。 – user2144480 2013-04-25 18:11:27

+0

我的榮幸。歡迎來到SO,我希望我們今後能更多地看到你。 – Basic 2013-04-25 19:06:50