Javascript 当我使用kineticjs绘制画布时,内存增长非常快
我正在创建一个使用HTML5和kineticjs库的游戏。我使用Nodejs启动服务器。守则:Javascript 当我使用kineticjs绘制画布时,内存增长非常快,javascript,html,kineticjs,Javascript,Html,Kineticjs,我正在创建一个使用HTML5和kineticjs库的游戏。我使用Nodejs启动服务器。守则: function animate() { newDraw() // Request a new animation frame using Paul Irish's shim window.requestAnimFrame(animate); }; function newDraw() { if(typeof localPlayer != 'undefined') {
function animate() {
newDraw()
// Request a new animation frame using Paul Irish's shim
window.requestAnimFrame(animate);
};
function newDraw()
{
if(typeof localPlayer != 'undefined') {
var layernew = new Kinetic.Layer();
var stg = new Kinetic.Stage({
container: 'container',
width: 500,
height: 300
});
var data = localPlayer.newdraw();
layernew.add(new Kinetic.Text(data.Text))
layernew.add(new Kinetic.Rect(data.rect))
stg.add(layernew)
}
}
内部requestAnimationFrame.js文件
// shim layer with setTimeout fallback
window.requestAnimFrame = (function(){
return window.requestAnimationFrame ||
window.webkitRequestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.oRequestAnimationFrame ||
window.msRequestAnimationFrame ||
function(/* function */ callback, /* DOMElement */ element){
window.setTimeout(callback, 100);
};
})();
它工作正常,但内存增长非常快=>firefox浏览器崩溃。
请帮我修复这个错误。
非常感谢 问题是: 在每个动画循环期间,您将创建其他阶段+层+元素 很快,您将拥有数百个以上的对象,所有这些对象都占用内存 改为: 在动画开始之前创建一次stage+layer+text+rect 然后使用各种对象操纵每个动画循环中的现有文本+矩形。设置。。。命令