clearCanvas() 与可拖动的图层



当我将普通对象或图层添加到画布(使用 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();
});

Mirko 的更新(先生,您在这里)

Caleb Evans为我的问题提供了解决方案:

clearCanvas()方法仅用于非图层(静态)图形。每当画布至少有一个 jCanvas 图层时,clearCanvas()就变得不适用。

如果要完全删除图层(假设不再需要它),请使用 removeLayer() 方法。

$('#clear').click(function(){
    $('canvas').removeLayers();
    $('canvas').drawLayers();
});

最新更新