FabricJS点击事件

时间:2013-10-22 10:21:27

标签: gwt canvas fabricjs

我正在FabricJS canvas库上构建一个图表库。到目前为止,一切都运行良好,如图所示:

enter image description here

但是,我已经开始实施click个事件并遇到了问题。由于某些原因,点击事件不能完全发挥作用 - 它适用于某些区域,而其他区域则不适用。例如,对于底部绘图区域(<div>,其中<canvas>),单击事件非常尴尬:当我点击绿色区域时,它表示我已经点击了紫色区域,而前100个奇数像素的蓝色区域不会发出点击事件:(。另一方面,顶部情节区域工作正常。

我已经完全阅读了FabricJS上的整个文档,并且意识到它的缺陷,但我不明白为什么会发生这种情况。我已经看到人们为了刷新路径坐标而调用path.setCoord(),但这没有帮助。

还有一件事,因为我正在编写GWT模块,我需要在JSNI中编写JS包装,但我相信我做的是正确的。

我是否可能忽略了有关FabricJS的内容?

更新:

生成的HTML: enter image description here

边界框 - 下方地块区域的蓝色区域

enter image description here

完全相同的边界框位于上方蓝色区域: - /

1 个答案:

答案 0 :(得分:2)

使用canvas.calcOffset()重新计算画布元素的正确位置。