Javascript 在fabric.js中的函数中添加对象
我试图在用户单击其他对象时添加一些对象。下面的代码不起作用。我还尝试添加setCoords,但似乎没有任何效果。 非常有趣的是,删除操作按我的预期进行。 谢谢你的建议Javascript 在fabric.js中的函数中添加对象,javascript,fabricjs,Javascript,Fabricjs,我试图在用户单击其他对象时添加一些对象。下面的代码不起作用。我还尝试添加setCoords,但似乎没有任何效果。 非常有趣的是,删除操作按我的预期进行。 谢谢你的建议 var showerOn = 0; //0 == off 1 == on var sprayOption = 0; var massageOption = 0; var trickleOption = 0; function selectShower() { if(showerOn == 1) { showerBu
var showerOn = 0; //0 == off 1 == on
var sprayOption = 0;
var massageOption = 0;
var trickleOption = 0;
function selectShower() {
if(showerOn == 1) {
showerButton.fill = 'yellow';
canvas.add(showerSpray);
canvas.add(showerMassage);
canvas.add(showerTrickle);
}
else {
showerButton.fill = 'white';
showerSpray.fill = 'white';
showerMassage.fill = 'white';
showerTrickle.fill = 'white';
sprayOption = 0;
massageOption = 0;
trickleOption = 0;
canvas.remove(showerSpray);
canvas.remove(showerMassage);
canvas.remove(showerTrickle);
}
}
showerButton.on('selected', function() {
showerOn = 1 - showerOn;
selectShower();
canvas.deactivateAll();
});
您在哪里初始化和/或重置
showerOn
变量为1或0?你能把完整的剧本贴出来吗?我认为这个变量未初始化或设置不正确..我在函数的正上方初始化变量。我只是在学习javascript和fabric.js,但据我所知,第一次单击时,淋浴按钮.on会使淋浴变量为1,下次单击时为0,依此类推。当你说这不起作用时,你的意思是“on”(“selected”),回调从未发生过吗?如果使用Google Chrome(F12),您可以尝试对此进行调试。您还可以放置console.log(淋浴)代码>语句作为按钮中的第一行。在
上查看它是否被触发。在第一个中添加元素后,尝试执行canvas.renderal()
,如果
块…通过“不起作用”,我的意思是它不添加对象。这是肯定进入,如果声明正确。canvas.renderAll()也无法修复它。