哪种内存泄漏安全方法最多

Mat*_*ttC 5 javascript ajax jquery dom design-patterns

我有一张经常更新的信息表.这是使用容器div呈现的,每行包含一个div,每行包含10个div.

我使用setInterval来调用一个返回一些json格式信息的asmx webservice.

在成功回调中,我调用$("#myContainer").empty();容器div并为每行的列重新创建行和10个嵌套的div.

这个页面可能会运行一整天,所以我很担心像这样更新DOM,因为我注意到随着时间的推移内存确实会增加内存(IE8).

我正在考虑的另一种方法是在行div中添加一个id.当新结果处理每个数据项时,查找相应的行,如果它存在,则覆盖每个div中的数据.如果它不存在(例如新数据),请追加该行.

其他人使用什么方法来进行这种长期存在的伪实时信息显示.

TIA

Dan*_*llo 5

通常,防止内存泄漏的一种非常安全的方法是避免破坏和重新创建DOM元素.在像你这样的情况下,我总是尝试保留初始的DOM结构,并且只有在AJAX请求的新数据可用时才更新元素的内部文本.

  • @Raveren:不,这不是事实.实际上这是一种非常悲观的方法,因为我确信现代浏览器在创建/删除DOM元素时能够管理内存.然而,在长期存在的Web应用程序(那些开放数天)中发现内存泄漏是如此令人头疼,我总是试图坚持这种悲观的方法.显然,对于复杂的GMail风格的应用程序来说,这是不可能的.但看起来OP只是简单地保持数据表的实时更新,在这种情况下,我会先尝试我建议的方法. (2认同)