一个页里新插入了7,8个iframe,因为iframe里面的页面过于复杂,不能用div结构代替,
只能用iframe,内存溢出是在使用后才发现的,

解决方案 »

  1.   

    现在的想法是,在unload时,将iframe引用拿到置为null,
    var ifrms = document.getElementsByTagName("iframe");
    var ids = [];
    for(var i=0,j=ifrms.length;i<j;i++){
    ids[i] = ifrms[i].id;
    }
    ifrms = null;
    var o = null;
    for(var i=0,j=ids.length;i<j;i++){
    o = _byId(ids[i]);
    o.parentNode.removeChild(o);
    o = null;
    }
    发现溢出问题,还是存在~
      

  2.   

    清空IFRAME你可以这样做:
    先设置每个IFRAME的SRC为about:blank
    然后再从BODY里remove这些iframe!
      

  3.   

    参考:
    <html>
    <head>
    <title>test</title>
    <script type="text/javascript">
    function test(){
    var objifr = document.getElementsByTagName("IFRAME");
    if(objifr.length>0){
    for(var i=0;i<objifr.length;i++){
    objifr[i].src = "about:blank";
    objifr[i].parentNode.removeChild(objifr[i]);
    }
    test();
    }
    objifr = null;
    }
    </script>
    </head>
    <body>
    <iframe src="http://www.v-ec.com/dh20156/"></iframe><br/>
    <iframe src="http://www.jxxg.com/blog/dh20156_369/"></iframe><br/>
    <input type="button" value=" remove Iframes " onclick="test();">
    </body>
    </html>自己打开任务管理器查看内存使用情况!
      

  4.   

    我是这么写的,应该跟你的方式差不多吧,还是老样子~window.attachEvent('onunload',function(){
    var ifrms = document.getElementsByTagName("iframe");
    var ids = [];
    for(var i=0,j=ifrms.length;i<j;i++){
    ids[i] = ifrms[i].id;
    }
    var o = null;
    for(var i=0,j=ids.length;i<j;i++){
    o = _byId(ids[i]);
    o.src = "about:blank";
    o = o.parentNode.removeChild(o);
    o = null;
    }
    ifrms = null;
    });
      

  5.   

    我给出的DEMO可以明显的看到内存的释放,如果你按照那样去做却没有效果,那就要考虑你IFRAME的文档是否有造成内存泄露的BUG!
      

  6.   

    还是有溢出,iframe内的文档不存在内存溢出,风之石兄弟,你确定这种方式是正解么?大家有没有别的什么方式呢?
      

  7.   

    你是不是用了CSS做自适应高度?
      

  8.   

    把 自定义的变都设为Null,移动控件上下级关系 ,最后用 CollectGarbage()释放
      

  9.   

    用CSS做了自适应高度会内存溢出么?怎么解决呢?----------------------------------------------
    hbhbhbhbhb1021(天外水火(我要多努力))你是不是用了CSS做自适应高度?
      

  10.   

    移动控件上下级关系,是什么意思,我不大明白呢----------------------------------------------------------
    kuiyouli(吾跃乾坤)把 自定义的变都设为Null,移动控件上下级关系 ,最后用 CollectGarbage()释放