删除iframe会导致内存泄漏吗?

时间:2012-10-16 09:23:22

标签: javascript jquery html

我有一个单页面应用程序,可根据用户输入创建和删除多个iframe。每个iframe可以包含一个jqgrid,一个用于输入提交的表单,带有jquery.validate插件等...

主页面可以访问所有iframe以检索当前操作状态和一些数据来重建主菜单。

可以安全地删除iframe,或者我需要.empty()身体才能删除它们吗?

编辑:

当我说“检索当前操作状态和一些数据”时,我实际上使用类似的东西访问iframe属性

jqueryFrameObject[0].contextWindow.myCoolProperty

但永远不会在主页面中缓存对象

1 个答案:

答案 0 :(得分:1)

否:jQuery负责删除可能导致内存泄漏的元素:

  

除了元素本身之外,还删除了与元素关联的所有绑定事件和jQuery数据。

如果你没有保留其他指针(包括例如基于闭包的隐藏指针),那么你将是安全的。如果您不想保留已删除元素的隐藏链接,请注意不要使用原生addEventListener