4

我正在尝试为svg:text元素获取鼠标事件。我注意到这是.on("click", ...)有效的,但其他事件如"mouseover","mousemove""mouseout"don 无效。

查看Health & Wealth of Nations示例,我看到所采用的方法是用不可见的文本覆盖文本,svg:rect并将其分配给事件。如果有一个简单的盒子,这很好,但如果有几个,它似乎会变得令人厌烦和凌乱。

是否有规范的方法来处理文本的鼠标悬停事件?

为了尽可能具体,我尝试创建一个标签云并为每个标签获取这些悬停事件。我可能只用divs 完成它并完成它,但我想知道是否有一种简单的方法可以SVG 容器中完成它。

4

1 回答 1

6

我想将事件分配给文本元素的问题在于它们只在实际文本上触发,即不是边界框。理论上它应该可以工作(至少我不知道在这方面对文本有任何特殊处理)——你能举一个具体的例子吗?

您还可以尝试将每个文本元素放入一个svg:g元素中并将事件处理程序附加到该元素中。

于 2012-08-03T22:02:43.323 回答