带有可拖动图层的 clearCanvas()
Posted
技术标签:
【中文标题】带有可拖动图层的 clearCanvas()【英文标题】:clearCanvas() with draggable layers 【发布时间】:2014-05-11 02:09:20 【问题描述】:当我将普通对象或图层添加到画布(使用jCanvas)时,我可以使用clearCanvas()
函数清除画布。
但是当我使我的图层可拖动时,clearCanvas()
函数似乎不起作用。当我单击按钮时,它确实清除了画布,但是一旦鼠标再次悬停在画布上,删除的内容就会再次添加。我在这里做错了什么?
JSFiddle Demo
$('canvas').drawArc(
fillStyle: 'black',
x: 100, y: 100,
radius: 50,
draggable: true, // uncomment this and Clear canvas works.
layer: true,
);
$('#clear').click(function()
$('canvas').clearCanvas();
);
【问题讨论】:
我无法回答我自己的问题,因为我还没有足够的声誉。唯一的选择是编辑我自己的问题。 【参考方案1】:UPDATE by Mirko(这里是先生)
Caleb Evans 为我的问题提供了解决方案:
clearCanvas()
方法仅适用于非图层(静态)绘图。只要您的画布至少有一个 jCanvas 层,clearCanvas()
就会变得不适用。
如果您希望完全删除一个图层(假设您再也不需要它),请使用removeLayer()
方法。
$('#clear').click(function()
$('canvas').removeLayers();
$('canvas').drawLayers();
);
【讨论】:
nicolallias,在这种情况下,礼仪是让你的答案社区维基,所以你不会因为不属于你的答案而获得声誉。以上是关于带有可拖动图层的 clearCanvas()的主要内容,如果未能解决你的问题,请参考以下文章