javascript - 如何制作一个可以使用 Raphaël 写字的简单编辑器

标签 javascript editor raphael

我想使用 Raphaël 制作一个新编辑器,然后添加更多想法,

所以第一步,我想用Raphaël实现写字

我能做什么?

有人给我一些想法

谢谢

最佳答案

首先,我不认为在 Raphael 中创建编辑器是最好的主意,标准的 html 和 javascript 就足够了。拉斐尔创造形状并使用SVG (Scalable Vector Graphics)所以这就是为什么我认为这不是最好的主意。但无论如何:

首先您需要熟悉 Raphael documentation 。完成此操作后,您会发现创建您想要的内容实际上非常简单。

1:创建用户将与之交互的 html 元素。

<div id="preview" style="width:100%; height: 300px; border: 1px solid #000;"></div>
<textarea name="textBlock" cols="85" rows="10">Edit your text here</textarea>

2:创建 Raphael 元素,我们最初将文本设置为空字符串。

var paper = Raphael("preview", "100%", "100%");
var t = paper.text("50%", 30, "");

3:将事件附加到您的元素,以便更新它。

$("textarea[name='textBlock']").bind("keyup", function() {
    t.attr({ text: $(this).val() });
});

这就是你想要的。每次按下键盘上的按键时,拉斐尔文本都会更新(当用户将手指从按键上移开时)。正如我之前提到的,如果它是一个像 stackoverflow 上出现的那样的编辑器,那么这不是您想要的最佳方法。存在某些限制,例如文本换行等,需要做更多的工作才能适应此框架。

如果您想查看整个源代码并使用它,jsFiddle here. 上有一个工作版本。

关于javascript - 如何制作一个可以使用 Raphaël 写字的简单编辑器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4279697/

相关文章:

editor - 电子文本编辑器或 textmate : What are environmental variables? 或在电子文本中:环境 - KEY_____ VALUE_____

javascript - 在 RaphaelJS 中拖放

javascript - 如何使用 Jest 在这种情况下测试 Express router catch 分支?

javascript - 延迟、可重置功能延迟

vim - 如何不放弃VIM?

xcode - 修剪 Xcode 中的尾随空格

javascript - 拉斐尔绘画。带有来自不同图像的两个扇区的圆圈

javascript - raphael js 删除函数是否会导致元素为假?

javascript - chrome隐身模式下的LocalStorage

javascript - "Disallow"当另一个正在执行 jQuery 时执行一个事件