4

我们需要一个能够保留原始标记的基于 Web 的类似 wiki 的富编辑器。目前,给定的自定义标记正在转换为 html 以进行显示和编辑(允许人们在链接和类似情况下编辑 html),然后在保存时转换回特定标记。这显然容易出错且不理想。

第一个重大决定是在纯javascript基于 html 的解决方案(如TinyMCE)和更面向客户端的解决方案(如 flash 或silverlight )之间做出决定,这将使我们不必担心 html 等。

根据您的经验,目前最好的选择是什么?

4

8 回答 8

4

这是一个很长的讨论。我的建议是使用具有良好 XHTML 输出的 JavaScript。根本不要使用闪光灯或银光。

对于我的项目,我使用了 YUI 文本编辑器,一切都非常好。在这里试试:http: //developer.yahoo.com/yui/examples/editor/skinning_editor.html

试试这个链接,这是一个非常好的网络编辑器比较,可以得到你需要的东西:

于 2009-03-09T15:26:25.350 回答
3

用户的种类和使用数据的环境有很多话要说。HTML 是一种演示格式,因此使用它来编辑内容是次优的。在很多情况下,您需要将内容与表示分离,然后 HTML 会因此而给您带来麻烦。您当然可以尝试将输入限制为 HTML 的子集,但这很难做到正确,并且首先会削弱这个想法,因为输入不再是真正的所见即所得。CMS 多年来一直在努力解决这个问题,所以我想没有简单的解决方案。

如果您的编辑是高级用户(可能是程序员,但我在普通人方面取得了成功),您可以让他们以 markdown 或类似的以内容为中心的格式输入内容,然后在演示时将其转换为 HTML。这种方法的最大障碍似乎是缺乏实时预览(所见即所得)。我已经使用Showdown实时呈现预览,就像这个网站一样 - 我最近为一种混合所见即所得类型的输入制作了一个小部件,你可能会发现它很有用。

于 2009-03-10T12:59:47.647 回答
2

在 Mozilla,他们一直在研究这个:

Mozilla 贝斯平

于 2009-02-26T14:34:32.387 回答
2

如果您使用MarkdownTextile之类的东西,您可能不需要允许直接 HTML 编辑——用户将始终使用内容的纯文本表示,而按需单向纯文本到 HTML 转换将是可以在 HTML 页面中获得更好的外观。

如果需要,有许多 Ruby Gem 可以帮助您实现 Markdown 和 Textile 纯文本到 html 的转换。还有一些不错的降价编辑器(作为 SO 使用的编辑器)。

在我看来,纯文本编辑(在 Markdown、Textile 或类似中)就足够了,并且在大多数情况下是更好的选择。这绝对是一种用于创建丰富内容的非常轻量级且符合标准的方法,尽管 Markdown、Textile 等不涵盖所有可能的格式选项,但纯文本路径值得认真考虑。

你也可以在 StackOverflow 上看到——它使用 Markdown 来提问和回答——这是一个不错的选择。我强烈支持能够看到“格式化标签”的需要,因为所见即所得几乎总是会导致错误放置/不需要的标签。此外,使用纯文本格式可以让您100% 控制生成的 HTML

如果您必须使用 WYSIWYG,我对 TinyMCE 的体验足以推荐它。

于 2009-03-10T10:23:45.430 回答
1

我们使用Screwturn开发基于内部知识的wiki 页面,供我们的开发人员参考。我会说它是一个不错的免费 wiki 工具。

于 2009-03-10T10:35:26.120 回答
1

我建议使用基于 Javascript 的编辑器。那里有很多,它们真的很好。与 JS 编辑器相比,我发现基于 flash / java / active x / 等的编辑器速度慢且笨拙。

我喜欢的一些 JS 编辑器是:

于 2009-03-11T06:44:14.293 回答
1

我个人喜欢 TinyMCE。

使用 TinyMCE 时,我可以推荐查看 BB 代码。我在编辑器中以 BB 代码实时呈现的文本,因此它看起来像粗体或您想要的样式。

将其以 BB 代码格式保存到数据库中,然后在显示文本时使用字符串替换器。

如果您想要标准的 wiki 标记,您可以制作自己的插件来呈现 wiki 代码。

于 2009-03-12T08:19:10.143 回答
0

WordPress 附带的 JavaScript 编辑器非常棒。

于 2011-06-14T20:54:41.793 回答