下午好。我对优化KineticJS和阶段有一个小问题。在我的计算机上拖动场景时,它会顺利运行。什么时候尝试更低端的机器,它看起来很慢,并且是幻灯片秀的一部分。这里初始化Kinetic的代码:
this.stage = new Kinetic.Stage({
container: WF_Config.gameWindowId,
width: $(stageContainerDOM).width(),
height: $(stageContainerDOM).height(),
draggable: true,
//TODO: test on other browsers. I really not understand what it's doing :)
dragOnTop: false,
scale: {
x: 1,
y: 1
}
});
this.layers = {
//Listen for events only for ground cells
ground: new Kinetic.Layer(),
grid: new Kinetic.Layer({
listening: false
}),
buildings: new Kinetic.Layer({
listening: false
}),
tooltip: new Kinetic.Layer({
listening: false
})
};
我如何才能提高性能呢?这里test site。单击创建游戏并写入名称和密码一些字符串和玩家数量的一些整数。你看到了这个。 附:感谢您的帮助,抱歉我的英语不好。
答案 0 :(得分:0)
看看缓存。您可以在拖放之前缓存整个舞台。这会暂时将整个舞台转换为图像。这是一个关于缓存的啧啧:
http://www.html5canvastutorials.com/kineticjs/html5-canvas-shape-caching-with-kineticjs/