0

我想知道在 goog 闭包编辑器中创建一个类似于 tinymce 中的“样式选择器”选择器是多么困难。

我的意思是文本样式的选择器,例如

heading 1
heading 2
heading 3
paragraph

从文档中我认为默认情况下没有可用的,即使有一些稍微相关的默认按钮,例如bold等。我知道的预先存在的按钮的逻辑在一个名为basictextformatter.js.

我熟悉编写插件,我会使用该.execCommandInternal函数来实现它,并使用ToolbarFactory创建一个selectButton.

但是我的问题是,我真的必须从头开始编写所有逻辑吗,例如:如果选择是插入符号,则在样式选择中包含多少文本,以及在应用新选择时删除以前的样式,处理跨浏览器标记不一致,在按钮中显示所选样式以及所有这些?

由于它似乎是许多其他编辑器的标准功能,我是否有可能错过了预先存在的插件功能或其他构建块?对于不重新发明轮子的任何提示,我将不胜感激。

4

2 回答 2

0

好吧,我想我找到了答案。

有一个插件,它是 lib 的一部分,名为HeaderFormatter. 不幸的是,它依赖于BasicFormatter插件并且似乎没有默认按钮(您必须创建自己的按钮) - 但看起来就像它是这个问题的答案。

于 2013-05-17T20:20:20.427 回答
0

听起来您指的是“插件”,它们是您可以注入 Google Closure 的goog.editor.Field文本编辑器的对象。Google Closure Library 中包含许多标准插件(粗体、斜体、下划线、创建链接等),尽管您可以随时使用自己的插件。例如,我必须制作自己的粘贴插件,从粘贴的文本中删除 HTML 格式。

在你挑选出你想要的插件之后,你可以在编辑器的工具栏中添加按钮,这些按钮会触发那些注入的插件监听的命令事件。

这是一篇博客文章,它比我在这里更好地解释了如何实际设置它:http: //closuretools.blogspot.com/2010/07/introducing-closure-library-editor.html

于 2013-05-17T02:36:32.257 回答