了解Canvas和KineticJS层清除

Cai*_*ene 11 jquery html5 kineticjs

我想知道是否有人可以了解在Canvas和KineticJS中管理图层的方式.我正在努力理解为什么当我清除(); 一层,然后使用draw(); 再次在该图层上运行,它返回我最初添加到该图层的形状等.

例如:

http://jsfiddle.net/vPGbz/1/

我假设清除一个图层完全删除它,为了重绘它我将不得不设置新的形状并构建一个新的图层.

如果有人也可以解释我,我会非常感激.

干杯,凯乌斯

m90*_*m90 10

一个人必须诚实地说,这个文档不被认为是超级冗长的,但是你可以在这里看到:http ://jsfiddle.net/vPGbz/2/clear只会从Stage对象中删除一个图层的绘制表示.您正在寻找的是remove用于从图层中删除某些元素的方法.

喜欢:

circleLayer.remove(circle);
Run Code Online (Sandbox Code Playgroud)

  • 更新KineticJS - 你现在可以删除这样的节点:circle.remove().删除节点不再需要父容器 (5认同)

Ada*_*ean 7

现在,你可以做,layer.children = [];但我不知道这是否会产生任何不应该的副作用!

编辑:不要这样做.相反,这样做:layer.removeChildren()http://kineticjs.com/api-docs.php下找到Container.