【问题标题】:ie does not free memory even when iframe is closedie 即使 iframe 关闭也不释放内存
【发布时间】:2012-12-05 16:13:56
【问题描述】:

我在一个网页中有 15 个 iframe。

<iframe id="iframe0" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe1" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe2" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe3" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe4" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe5" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe6" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe7" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe8" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe9" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe10" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe11" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe12" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe13" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>
<iframe id="iframe14" style="left: 1px; visibility: visible; width: 100%; position: absolute; top: 23px; border: 1px solid #8db1e3;" frameborder="0" scrolling="auto"></iframe>

这些 iframe 中的每一个都在 .NET 中调用一些具有大量 gridview 的网页。 我正在使用 ASP.NET 开发这些页面。 我的问题从这里开始。

我知道 iexplorer.exe 正在成长,因为我在这些页面中加载了大量数据。 有时会达到 400MB。 但问题是,即使我关闭 iframe,这意味着...... 我制作了其中一个 iframe src = about:blank 并使其 display = none; 但是 iexplorer.exe 的内存大小并没有下降。 它不会释放内存。 怎样才能让记忆恢复正常? 实际上,我已经在 IE8 中进行了测试。 但 IE9 似乎正在释放内存。我不确定。

编辑: 我将 iframe 关闭为 velow

document.all['iframe' + menuOrder[currentTab]].src = "about:blank";
document.all['iframe'+menuOrder[currentTab]].style.visibility="hidden";

【问题讨论】:

  • 真的没必要。您无需释放物理内存即可让操作系统将其用于其他目的。并且虚拟内存几乎可以无限供应,通常不值得释放。如果您遇到实际问题,除了看到您不喜欢的号码之外,请告诉我们这是什么问题,我们会帮助您解决问题。
  • “我的网页中有 15 个 iframe”。对不起兄弟
  • @David Schwartz 事实上,当 iexplorer.exe 占用太多内存时,我的电脑变得越来越慢。这才是真正的问题。
  • @JoshuaSon:关闭 iframe 后性能是否仍然很差?
  • @David Schwartz 因为,内存没有下降。是的,即使在我关闭 iframe 后,性能仍然很差。我编辑了我如何关闭 iframe。

标签: iframe


【解决方案1】:

将可见性设置为隐藏不会“关闭” iframe。即使您看不到它,它仍然在消耗资源。如果将 iframe 正在使用的页面更改为空白页面,您也许可以降低内存使用量。

【讨论】:

  • 如您所见,我将空白页设置为iframe。
猜你喜欢
  • 2016-11-05
  • 1970-01-01
  • 2011-08-16
  • 2018-01-31
  • 2012-06-25
  • 1970-01-01
  • 2012-10-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多