jquery 相关页面内存漏问题

最近目前做的系统页面内存严重泄漏,研究发现主要是jquery框架引起,主要几个泄漏点:

1.jquery.1.7.2.min.js每次加载大概400K,如果是作为一个iframe的话,点菜单,不停切或页面刷新会不断增涨.
   解决办法:找到一个jquery.1.7.1.js或jquery.1.8.2.min.js这个版本不会泄漏.

2.jquery-ui.1.8.2.custom.js泄漏更严重,每次大概泄漏6-7M,刷几下系统就动不了.
  解决办法:同样,找到一个不泄漏的版本jquery-ui.1.7.2.js这个版本不会泄漏.
  存在问题:不过存的在问题是它与jquery.1.7.1配合使用会有dialog的beforeclose的事件与其它版本beforeClose区别C是小写,别外日期控件点也弹不出来选择日期表,这个暂时还没分析原因,用的时候注意一下.

3.jqGrid.min.js表格刷数据也会泄漏,我们是5秒调一次$("#dataTB").trigger('reloadGrid');这个不断刷数据.放一个晚上大概泄漏上80M.
  原因:分析发现是reloadGrid这个方法每次都是调ajax从服务器拿数据刷新表格,原以为是ajax引起的,后来发现是操作DOM引起,拿到数据后,一个个tr写进来,如果表格是100行就要写100次,严重泄漏.
   解决办法:修改jqGrid.min.js里面的ka方法,里面有一个循环将$("b ..tbody:first").append(H.jion(""));改为在for里只给一个临时字符串,for完后再一次写,减少操作次数据,内存泄漏从100M减到1M的效果,相当明显。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值