解决使用fusioncharts时浏览器内存占用不停增大的问题
2013-08-29 15:51
288 查看
原因:
每次new FusionCharts( , "ChartId", "100%", "100%", "0", "0");都会新建一个对象存于浏览器中,如果不进行对象的效果或者重用就会造成浏览器中的fusioncharts对象不停的增加,占用的内存也就会不停的增大了;
方案:
FusionCharts("myChartId")直接通过已经设定的fusioncharts的ID来获取其对象,判断其对象是否存在,如果存在则销毁(dispose)或者直接赋值(setXMLData),即可在不new新对象的情况下更新报表数据;
方法1:
if(FusionCharts("myChartId")!= undefined){
FusionCharts("myChartId").dispose();
}
方法2:
if(!FusionCharts("myChartId")){
// new 一个
var chart =new FusionCharts(”具体swf“, "ChartId", "100%", "470", "0", "0");
chart.setXMLData(“xml数据”);
}else{
FusionCharts("myChartId").setXMLData("xml数据");
}
每次new FusionCharts( , "ChartId", "100%", "100%", "0", "0");都会新建一个对象存于浏览器中,如果不进行对象的效果或者重用就会造成浏览器中的fusioncharts对象不停的增加,占用的内存也就会不停的增大了;
方案:
FusionCharts("myChartId")直接通过已经设定的fusioncharts的ID来获取其对象,判断其对象是否存在,如果存在则销毁(dispose)或者直接赋值(setXMLData),即可在不new新对象的情况下更新报表数据;
方法1:
if(FusionCharts("myChartId")!= undefined){
FusionCharts("myChartId").dispose();
}
方法2:
if(!FusionCharts("myChartId")){
// new 一个
var chart =new FusionCharts(”具体swf“, "ChartId", "100%", "470", "0", "0");
chart.setXMLData(“xml数据”);
}else{
FusionCharts("myChartId").setXMLData("xml数据");
}
相关文章推荐
- 使用NFS时出现nfs_inode_cache占用内存过高问题的解决
- 解决Picasso占用内存,使用Picasso在加载超过2M左右的图片时完全不能显示图片问题(不同的手机可能不同)
- 使用MySQL Slow Log来解决MySQL CPU占用高的问题
- Rxlifecycle使用详解,解决RxJava内存泄露问题
- 解决.net的堆碎片化带来的内存占用过大的问题
- 解决Firefox占用内存“过大”的问题(FireFox about:config介绍)
- Windows Server 内存占用过高问题解决
- selenium2 安装、简单使用及浏览器启动问题解决汇总
- 解决w3wp.exe内存占用问题
- CI框架在CLI下执行占用内存过大问题的解决方法
- 解决Apache长时间占用内存大的问题,Apache 内存优化方法
- Android使用BitmapFactory.Options解决加载大图片内存溢出问题
- 解决mySQL占用内存超大问题
- FusionCharts使用问题及解决方法(一)-FusionCharts常见问题大全
- 解决ibus在google chrome / chromium 浏览器中使用Backspace后无法输入文字的问题
- FusionCharts使用问题及解决方法(二)
- 【转】正确使用 RamDisk Plus 的方法-解决分配内存后占用系统内存的问题
- Linux服务器Cache占用过多内存导致系统内存不足问题的排查解决
- 解决Tomcat使用80端口被占用的问题