"mouse:over" 未触发并且 "mouse:down" 使用 fabricJS 返回未定义的目标

"mouse:over" not firing and "mouse:down" returning undefined target using fabricJS

这是我的问题;我正在尝试显示 "markers" 并在 鼠标上 over/out/click 进行一些操作。

问题是在 over 上根本没有触发任何事件,当在控制台中 click (down) 时,我得到了一些反馈,但不是每个人说的元素(目标 == 未定义)。

我的不同形状在一个名为"marker"的组中。 我将所有内容分组如下:

marker.add(plateShape, plateLabel, line, indicator);

使用时

marker.addWithUpdate(plateShape, plateLabel, line, indicator);

我得到了一些反馈(充其量不过是挑剔),但布局完全乱七八糟。

您可以 comment/uncomment 第 86 行检查以下行为 fiddle。

https://jsfiddle.net/u7x7az1j/5/

感谢您的帮助! :)

问题出在您使用 add

add替换为addWithUpdate并注意addWithUpdate每次只接受一个参数。

marker.addWithUpdate(plateShape);
marker.addWithUpdate(plateLabel);
marker.addWithUpdate(line);
marker.addWithUpdate(indicator);

我试过你的 fiddle 并且有效。 考虑用您可以轻松构建的简单参数 fabric.Path 替换 rect + triangle + line。