博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IE下内存增涨明显的问题
阅读量:6549 次
发布时间:2019-06-24

本文共 841 字,大约阅读时间需要 2 分钟。

哪些问题会引起IE下内存增长明显,并且关闭iframe弹窗内存也降不下来?

1、页面创建iframe和切换同一iframe的src相比,切换同一iframe的src内存增长少一些,例子是:iframe链接的同一个html,html里面是将一个div循环一万次,再点击50次,内存增长大概相差15M;

2、IE中的内存释放和切换iframe快慢有关,切换的快如果内存没有完全释放,就会在原来的基础上增加,后面也不会释放,例子是:点击创建iframe内存增长30M,移除本来会释放10M,在还没有释放10M的时候又创建iframe了,那么内存不会继续释放就会增长,所以增长的基数就变大了;

3、在IE中打开一个iframe页面,如果存在全局变量,iframe移除后内存不能完全释放,例子是:如果iframe里面没有内容,内存几乎是没有增长的),用vue循环一万个div,点击50次内存增长35M左右,用artery6循环一个点击一次增长225M,点击第二次增长180M,因为artery6创建一个div就会创建全局变量,所以就算iframe移除也不会释放全局变量,F5刷新页面内存也不会降下来。

解决办法 1、离开页面时将html置空,将vue对象销毁,效果不是非常明显,可能是因为我写的例子没有绑定事件的原因,查了一下在removeChild和innerHTML=’’二者之间,尽量选择后者removeChild无法有效地释放dom节点;

2、离开页面时将页面关闭(window.close()),效果不明显,感觉该方法也只是将页面关闭没有做其他操作;

3、离开页面时将window对象里面的全局变量置为null,效果明显,释放了我们自己创建的一些全局变量。

总结:在大一点的项目中尽量不要使用iframe,如果使用,选择切换iframe的src而不是频繁的创建和移除iframe,如果用了插件或一些js库,需要去关注是否创建了大量的全局变量,在写代码的过程中,如果是使用完记得销毁。

转载地址:http://xegdo.baihongyu.com/

你可能感兴趣的文章
怎样实现前端裁剪上传图片功能
查看>>
ffmpeg+SDL2实现的视频播放器「退出、暂停、播放」
查看>>
2011/7/3 第二次评审
查看>>
tar解压
查看>>
inheritprototype原型继承封装及综合继承最简实例
查看>>
【磁耦隔离接口转换器】系列产品选型指南
查看>>
Apriori 关联算法学习
查看>>
MVPArms官方首发一键生成组件化,体验纯傻瓜式组件化开发
查看>>
制作iso镜像U盘自动化安装linux系统
查看>>
JSLint的使用
查看>>
HTTP POST GET 本质区别详解
查看>>
MD5加密
查看>>
ant
查看>>
微信,想要说爱你,却没有那么容易!
查看>>
有关sqlite与sql
查看>>
MapXtreme 2005 学习心得 概述(一)
查看>>
php进一法取整、四舍五入取整、忽略小数等的取整数方法大全
查看>>
Hibernate的拦截器和监听器
查看>>
WSDP
查看>>
Memory Management
查看>>