我在FabricJS中遇到了事件监听器的问题。 基本上我在根圆周围创建子圆,并根据子圆的数量改变它们的位置,因此它们在根周围的位置相同。这种方法迫使我在创建它之后重新定位子圆圈,这就是重点:
当我在子项上放置一个事件监听器时,监听器似乎只跟踪创建特定对象时的位置,而不是最终/当前位置。
当我将侦听器放在整个画布对象上时也是同样的问题。
for(var i = 0; i < this.ChildCircles.length; i++)
{
this.ChildCircles[i].set({ left: this.CenterX + Distance * Math.cos(i * StepDegrees * Math.PI / 180),
top: this.CenterY + Distance * Math.sin(i * StepDegrees * Math.PI / 180)
});
}
这就是我重新定位对象的方法。对于事件监听器,我使用常规on() - 函数。请帮忙!
答案 0 :(得分:0)
Sry,因为没有回答。我实际上发现“画布”方法不适合m,所以我切换到了SVG。由于我想与圈子互动(events =&gt;放大/缩小等),我使用名为SnapSVG的SVG框架。它解决了上面的问题,因为“监听器”(我猜它变成了一个DOM事件)坚持对象而不是每次由框架计算。