您的位置:首页 > 其它

iframe 内存释放

2014-01-20 10:17 309 查看
未经验证

Ext 核心开发人员Jack的回答是,TabPanelItem在关闭时并不会对自定义到tab中的元素做特殊处理,这部分工作必须在控件外来完成。另一方面, 相关资料称IE在iframe元素的回收方面存在着bug,在通常情况下应该将该元素的src属性值修改为”abort:blank”,并手工将其从 DOM树上移除,然后把脚本中引用它的变量置空并调用CollectGarbage()就可以避免iframe不能正常回收所造成的内存泄露。

按照上述方法,在tab的close事件中添加了iframe的销毁代码,IE的内存泄露问题得以解决。

var frame = $('iframe');

frame[0].contentWindow.document.write('');//清空iframe的内容

frame[0].contentWindow.close();//避免iframe内存泄漏

frame.remove();//删除iframe

===http://www.cnblogs.com/wuxinxi007/archive/2009/12/23/1630469.html

function clearIframe(id){

var el = document.getElementById(id),

iframe = el.contentWindow;

if(el){

el.src = 'about:blank';

try{

iframe.document.write('');

iframe.document.clear();

}catch(e){};

//以上可以清除大部分的内存和文档节点记录数了

//最后删除掉这个 iframe 就哦咧。

document.body.removeChild(el);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: