2012-06-06 107 views
0

我正在使用svg在ipad phonegap应用程序中对图像进行涂鸦。
用于初始化SVG的代码是:使用svg清除内存泄漏

function initDrawing(){ 
var paper; 
var masterBackground ; 
    paper = Raphael(document.getElementById('scroller'),780,1500); 
    masterBackground = paper.image("data:image/jpg;base64,"+test,0,0,780,1500); 
} 

我使用raphael.js库来创建SVG元素。
一切工作正常。我有下一个和上一个按钮。如果我再次点击下一个按钮,函数initDrawing()被调用。新的图像被加载,现在手涂鸦变得更慢。每次点击下一个按钮时,涂鸦变得越来越慢。为什么会发生?发生内存泄漏的位置?

回答

0

你检查了你的DOM的样子吗?看起来你可能只是不断添加图像,而不是替换现有的图像。

如果你真的想保留旧图像,你至少应该设置display="none"

+0

@达尔斯特伦埃里克,嗨,我不想保留旧图像。我需要替换现有的。怎么做。 pl帮助我。 – mmathan

+0

@mmathan参见例如http://stackoverflow.com/a/5068781/109374 –