我有一个可视化,本质上是一系列堆叠的条形图,每个条形图包含多个面板。例如,here https://i.stack.imgur.com/IAX6o.png是三个这样的条形图,每个都有四个面板。
我已经成功实现了跨图表协调的平移/缩放功能。This https://i.stack.imgur.com/NgDLI.png例如,如果我放大最后一张图像的第三个面板,就会看到这样的情况。缩放行为是从放置在每个图表上的不可见矩形调用的。
我的问题是我想根据用户光标在绘图中的位置启用工具提示功能。然而,由于缩放矩形放置在图表顶部,因此不会为实际图表本身中的任何 SVG 元素注册鼠标事件。
有谁知道解决这个问题的方法吗?
我正在关注迈克·博斯托克的例子 https://bl.ocks.org/mbostock/4e3925cdc804db257a86fdef3a032a45,就像你放置一个rect
穿过我的整个图表,然后调用缩放行为,就像您发现的那样,它正在消耗所有指针事件。
我找到了一个example https://bl.ocks.org/saifulazfar/f2da589a3abbe639fee0996198ace301在这里,这似乎实现了我想要的,我发现如果我放弃rect
并且只是调用缩放行为svg
直接元素,我仍然收到子元素的指针事件。
我是这里的菜鸟,我真的不明白为什么这有效。我还猜想这可能有其自身的影响,例如我想这会阻止您限制鼠标事件导致缩放的图形区域。您可能会注意到我链接的示例创建了一个sub-svg
;我不知道,但也许这是为了解决这个问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)