2017-03-31 38 views
0

我正在使用fabric.js和canvas。我正在使用fabric.js sendToBack/sendBaward的属性,但它不适用于我。我希望当我点击按钮发送回当前活动对象后面的其他对象。我的工作链接如下。sendToBack/sendBawark不会将对象隐藏到其他对象上Fabric.js

Cap Customizer

和代码剪断如下。

function moveBack() 
 
{ 
 
\t var sel_obj = canvas.getActiveObject(); 
 
\t if(sel_obj) 
 
\t { 
 
\t \t console.log('back'); 
 
\t \t canvas.sendToBack(sel_obj); 
 
\t \t canvas.renderAll(); 
 
\t } 
 
}

任何人都可以知道,请帮助我。

回答

0

您错过了解释方法sendToBack方法。它根据此doc适用于对象,而不是在画布上。

因此,应该要么使用sendToBack您选择的对象在绘制对象的堆栈底部移动,或者sendBackwards(true)发给仅次于绘制的第一个下位目标。

在这两种情况下,您都需要使用对象上的方法,而不是画布。如果您需要任何解释,请在评论中告诉我,但请阅读链接的文档。

+0

我读了文档,但无法理解如何在我的例子中应用sendToBack/sendBackwards(true)和bringToFront不工作 –

+0

用'sel_obj.sendToBack()'替换'canvas.sendToBack(sel_obj)'。这实际上是我总结我的答案。 – Mozgor

+0

我也尝试像这样sel_obj.sendToBack(),但它也不适合我。 –