我有一個經常更新的信息表。這是使用每行包含10個div的容器div展示的。哪個是內存泄漏最安全的方法
我使用setInterval來調用一個返回一些json格式信息的asmx webservice。
在成功回調函數上,我在容器div上調用$("#myContainer").empty();
,併爲每行的列重新創建行和10個嵌套div。
這個頁面可能會運行一整天,所以我很警惕更新DOM,因爲我已經注意到隨着時間的推移(IE8)瀏覽器的內存確實增加。
我正在考慮的另一種方法是添加一個id到行div。當新結果處理每個數據項時,如果它存在覆蓋每個div中的數據,則查找相應的行。如果它不存在(例如新數據),請追加該行。
其他人使用什麼方法來處理這種長期存在的僞實時信息顯示。
TIA
這是一個公認的事實嗎?你有沒有參考,不是我懷疑你,它會更好地閱讀更多。 – raveren 2010-04-09 11:42:50
@Raveren:不,這不是一個可靠的事實。實際上,這是一種非常悲觀的方式,因爲我確信現代瀏覽器在創建/刪除DOM元素時不僅能夠管理內存。儘管如此,在長時間的Web應用程序(那些開放了幾天)中發現內存泄漏是一件令人頭疼的事情,我總是試圖堅持這種悲觀主義的方式。顯然這對於複雜的GMail風格的應用程序來說是不可能的。但看起來OP只是簡單地實時更新數據表,在這種情況下,我會嘗試我先建議的方法。 – 2010-04-09 11:54:06