【发布时间】:2012-05-03 19:50:33
【问题描述】:
我在 Raphael 生成的 SVG 元素的顶部有一个 html 元素(允许动态文本换行和调整大小)。
问题是我将事件(mousedown、mouseup 等)分配给了 html 下的 SVG 元素。 SVG 元素本身实际上可以通过 raphael.freeTransform 插件进行拖动和缩放。
当然,顶部的 html 元素不再接收事件。
我正在寻找解决此问题的方法,但真的不知道从哪里开始。该解决方案必须跨浏览器兼容,因此某些现代浏览器中允许元素忽略点击的新功能集不是可接受的解决方案。
注意:我已经尝试了通过在 SVG 本身中呈现文本来实现相同功能的所有方式,但实际上无法以动态方式准确模拟我想要做的事情(即文本在用户键入时调整大小和换行)
我目前能想到的唯一解决方案是以某种方式使用foreignObjects,但是除非有人知道插件,否则Raphael 不支持它们?
【问题讨论】:
-
对我来说,很难完全理解您的问题的背景。我建议将 jsfiddle 与您的问题的示例/再生产放在一起。
标签: javascript jquery svg raphael