之前我已经问过这个问题了,我使用的代码似乎很混乱。所以这是同一代码的虚拟版本。 我使用add函数在画布上绘制一个正方形。同样明智的我应该能够使用remove函数从画布中删除项目!唉,似乎没有发生这种情况。
这是代码
$(window).addEvent('load',function(){
CANVAS.init({ canvasElement : 'canvas' });
CANVAS.layers.add( new Layer({
id : 'myLayer'
}));
var colors = [
'rgba(255,0,0,1)',
];
var pos = [
{ x: 150, y : 100 },
]
var foo = new CanvasItem({
id : 'item',
x : pos[0].x,
y : pos[0].y,
fillStyle : colors[0],
events : {
onDraw : function(ctx)
{
ctx.fillStyle = this.fillStyle;
ctx.fillRect(this.x,this.y,200,200);
}
}
});
CANVAS.layers.get('myLayer').add(foo);
CANVAS.draw();
CANVAS.layers.get('myLayer').remove(foo);
CANVAS.draw();
});
这里也可以看到jsfiddle
我用来实现它的库是通过mootools canvas库。 Here is the link of the functions.
希望这可以帮助人们获取我的查询。如果您仍在思考我的问题究竟是什么,请随时提出问题!感谢
编辑:库中有一个错误。请在答案的评论中找到以下更正代码的链接。感谢。答案 0 :(得分:3)
查看remove function的文档时,您应该在调用它时传递itemId
而不是实际的项目对象。
答案 1 :(得分:2)
库中的错误在remove函数中。我有以下脚本删除该错误。希望它能帮到人们。 :)