【问题标题】:how to change text dynamically with raphael如何使用 raphael 动态更改文本
【发布时间】:2013-06-05 16:26:24
【问题描述】:

好的,这基本上就是我现在正在做的事情。我创建了 raphael 文本对象。我使用点击事件打开一个对话框。然后我对对话框中的文本进行更改。不过,这不是我希望实现的方式。我希望我的实现有点类似于在 MS Paint 中创建文本的方式,用户可以单击文本对象并在键入时更改文本。有人知道如何使用 raphael 文本对象来实现这一点吗?

【问题讨论】:

    标签: text raphael


    【解决方案1】:

    一个简单的解决方案是在用户开始编辑文本时创建一个<textarea>。用当前文本填充它并将其放置在文本对象上。然后,当它失去焦点时 (onblur),移除文本区域并将文本复制回文本对象中。

    如果你真的想在文本对象中“就地”编辑文本,那么你可以让用户在一个隐藏的文本字段中输入。但在这种情况下,您必须自己实现所有光标和选择逻辑。参见this fiddle(它只允许使用左右箭头移动光标,使用shift选择文本以便您可以复制和粘贴)。

    另外,我不知道contenteditable 是否适用于 SVG 内容,但如果它确实有效,那将是一个非常简单的解决方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-20
      • 1970-01-01
      • 2012-12-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多