zoukankan      html  css  js  c++  java
  • iframe内存释放

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

    <script>
    
       function clearRAM() {
    
               var frame = document.getElementById("ifr_content");
              frame.src = 'about:blank';
              frame.contentWindow.document.write( '');//清空frame的内容
              frame.contentWindow.document.clear();
              frame.contentWindow.close(); //避免frame内存泄漏
    
              if (navigator.userAgent.indexOf('MSIE') >= 0) {
                      if (CollectGarbage) {
    
                           CollectGarbage(); //IE 特有 释放内存
    
                            //删除原有标记
                           var tags = document.getElementById("ifrSet");
                           tags.removeChild(frame);
    
                            //添加frameset框架
                           var _frame = document.createElement('frame');
                           _frame.src = '';
                           _frame.name = 'content';
                           _frame.id = 'ifr_content';
                           tags.appendChild(_frame);
    
                     }
              }
    
       }
    
        //主动释放 5秒一次
       setInterval( function() {
               if (navigator.userAgent.indexOf('MSIE') >= 0) {
                      if (CollectGarbage) {
                            //alert(1)
                           CollectGarbage(); //IE 特有 释放内存
                     }
              }
       }, 5000)
    

    </ script>

  • 相关阅读:
    排列组合例题分析
    短信微服务+springboot+redis整合,动态获取短信验证码
    mac版idea 2018.3.5版 永久激活教程
    windows版idea 2018.3.5版 永久激活教程
    深入理解 Java 垃圾回收机制
    如何写代码 —— 编程内功心法
    并发与并行的区别
    Lua语法要点
    android 手机上运行图像算法
    OPENCL 错误码
  • 原文地址:https://www.cnblogs.com/xieshuang/p/5357248.html
Copyright © 2011-2022 走看看