我有一个应用程序,每60秒重绘一次页面的一部分。重绘会导致IE中的主要内存泄漏。
我尝试使用settimeout / setinterval来设置重绘计时器。
我也尝试了许多建议的提示,如
尽管如此,我仍然可以看到很大的内存泄漏。 MS KB文章似乎表明IE 8本质上是泄漏,我们需要应用修补程序:http://support.microsoft.com/kb/975623
但是,我已经在IE7中看到了这个问题,并且在firefox中也看到了这个问题。
非常感谢任何帮助。
谢谢, Suchin
答案 0 :(得分:0)
您提到的所有选项都值得一试,您是否还尝试先添加DOM元素,然后再设置innerHTML?
这是一个例子 http://ecmascript.stchur.com/blogcode/ie_innerhtml_memleak/noleak.html
那家伙的解决方案
// Add the element to the DOM first, and /then/ set .innerHTML to
// prevent memory from leaking.
document.body.appendChild(elem);
elem.innerHTML = str;
你是如何删除所有处理程序的?你使用像克罗克福德的清洗解决方案吗? http://javascript.crockford.com/memory/leak.html