jqplot内存泄漏、内存不断增加管理ajax

来源:互联网 发布:男士护肤吧 淘宝店铺 编辑:程序博客网 时间:2024/06/05 08:14

在使用AJAX时,jqplot内存不断增加。当系统分配给浏览器的内存不足时就崩溃了。

在网上找了很多资料都没有解决问题,最后看了其源码因为使用JQUERY变量$.jqplot进行实例化时会调用其内部的var plot = new jqPlot();

如果你每次AJAX都去实例化就会增加内存,就算你销毁实例,var plot = new jqPlot();产生的内存任然存在,因为它不是该实例的一个成员,这样就会导致这块内存不能够被访问。

解决办法:

if(lineMemory == null){            lineMemory = $.jqplot('distpic',[l1, l2, l3, l4, l5, l6], barLineConfig('用量'));        }else{            lineMemory.init('distpic', [l1, l2, l3, l4, l5, l6], barLineConfig('用量'));            lineMemory.replot();        }

//先创建一个对像,如果该对像存在就进行初始化,然后调用replot进行重画。这样就不会重复调用jquery.jqplot.js中的var plot = new jqPlot();

0 0