其实框架在IE内存的泄漏上,还是做了不少工作的,所以用框架的事件绑定方法,还是明智的 但仅靠框架来避免IE内存泄漏,还是远远不够的,自己写的代码要很多地方都要注意 这是一段prototype.js的框架代码,在一定程度上处理了IE内存泄漏 function destroyCache() { for (var id in cache) for (var eventName in cache[id]) cache[id][eventName] = null; } // Internet Explorer needs to remove event handlers on page unload // in order to avoid memory leaks. if (window.attachEvent) { window.attachEvent("onunload", destroyCache); }
比如, $('#ssp').append('<div></div>');这样
可实际内存中还是存在的;
代码太多太复杂了, 发了没什么意义.
如果你的JS对象引用了dom,在移除dom之前,记得把这个引用置成null
如果dom引用了其它的JS对象,在移除dom之前,记得把这个JS引用设置成null
数据加载,在用完之后,记得设置为null
其它N个变量。。记得用完之后,设置为null.....
其它语言,你的东西可以乱丢,甚至firefox中,你也可以乱丢,但在IE中的JS,不行啊唉这些本该是垃圾回收器做的事,全给程序员来完成。现在体会到IE的烂,烂到什么程度了
自己去搜些IE内存泄漏的文章吧,看看解决办法
但仅靠框架来避免IE内存泄漏,还是远远不够的,自己写的代码要很多地方都要注意
这是一段prototype.js的框架代码,在一定程度上处理了IE内存泄漏
function destroyCache() {
for (var id in cache)
for (var eventName in cache[id])
cache[id][eventName] = null;
}
// Internet Explorer needs to remove event handlers on page unload
// in order to avoid memory leaks.
if (window.attachEvent) {
window.attachEvent("onunload", destroyCache);
}