Jquery内存占用问题

最近使用PHP跟Jquery结合做一些小东西来研究,为以后做CRM之类的软件做一些资料准备。具体的产品方向是什么,暂时还没有下定论。只是先准备好一些软件以及架构上的东西先。

Jquery进行无刷更新页面的时候,我遇到内存会一直增加的问题。问过很多朋友都说没有这个问题。或许他们没有详细地测试过吧。一般要把页面挂在 那里10分钟之后才会有感觉的。从当前页面跳转到其他页面会出现卡一下再转跳的情况。不少公司不重视这个问题的,如开发网,如果把一个页面挂在那里比较久 的话,会出现再开其他页面会比较慢。

在GG搜了一把,主要是的原因是因为Javascript的内存泄露引起的。我也找到了一个解决的办法,拿来先顶着吧。对于复杂的JavaScript还是会出现内存泄露,或许那个页面的JavaScript需要我自己重新写过吧。

  1. jQuery.fn.removeNode = function(){
  2. var d;
  3. return function(){
  4. if(this[0] && this[0].tagName != 'BODY'){
  5. d = d || document.createElement('div');
  6. d.appendChild(this[0]);
  7. d.innerHTML = '';
  8. d.outerHTML = '';
  9. }
  10. }
  11. }();
  12.  
  13. (function($) {
  14. $.fn.Disposable = function(cln) {
  15. return this.each(function() {
  16. var el = this;
  17. if (!el.dispose) {
  18. el.dispose = cleanup; // will be called by
  19.     // Microsoft for cleanup
  20. $(window).bind("unload", cleanup);
  21. }
  22. function cleanup() {
  23. if (!el)
  24. return;
  25. $(el).unbind();
  26. $(window).unbind("unload", cleanup);
  27. el.dispose = null;
  28. el = null;
  29. };
  30. });
  31. };
  32. })(jQuery);

调用比较简单,

  1. $("#title").html(val).Disposable();

转自:  http://www.jianblog.com/2009/06/04/661/
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卷边书_王诣

您的鼓励,是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值