【发布时间】:2018-08-05 19:35:05
【问题描述】:
我正在尝试使用自定义属性在画布上绘制网格。之后尝试使用那些添加的自定义属性删除该网格。
所以网格显示在画布上,但是当我试图删除网格时。它不工作。
代码
//Draw Grid
function draw_grid(){
var grid = 50;
canvas.getObjects().forEach(function(o) {
if(o.custom_class == 'canvas_grid') {
console.log(o.custom_class);
canvas.remove(o);
}
});
for (var i = 0; i < (600 / grid); i++) {
var grid_line1 = new fabric.Line([i * grid, 0, i * grid, 600], {
stroke: '#ccc',
selectable: false,
'custom_class' : 'canvas_grid'
});
canvas.add(grid_line1);
var grid_line2 = new fabric.Line([0, i * grid, 600, i * grid], {
stroke: '#ccc',
selectable: false,
'custom_class' : 'canvas_grid'
});
canvas.add(grid_line2);
}
}
draw_grid();
/* Hide/Show Grid */
$(document).on('change','#show_grid',function(){
if($(this).is(':checked'))
{
draw_grid();
}
else
{
canvas.getObjects().forEach(function(o) {
if(o.custom_class === 'canvas_grid') {
canvas.remove(o);
}
});
}
});
代码笔
【问题讨论】:
标签: javascript jquery canvas fabricjs