1

我是 tinyMCE 的新手,目前正在研究向 tinyMCE 添加自定义元素的首选方式?

我在工具栏上添加了一些按钮,它们依次触发 (a) 为选定的文本部分插入元素,以及 (b) 在再次单击时从选定的文本中删除这些元素。

我不想允许嵌套这些元素,所以基本上我只想用给定的、不重叠的标签来标记句子或单词的一部分,例如:<foo>Hello</foo> world

目前我在 tinyMCE 文档中发现了这两种可能性:

#1 tinyMCE.execInstanceCommand(editor_id, command, user_interface, value, focus)    

#2  var n = dom.create(element);
    n.innerText = sel.getContent({format : 'text'});
    tinyMCE.activeEditor.selection.setNode(n);

其中#2看起来像更灵活的方法,因此值得我追求。

我已经开始使用方法 #2 实现一个插件,但我不确定我将如何处理以下内容:

  • 选择重叠元素边界文本节点(如<foo>hello</foo> world <bar>!</bar>
  • 合并相邻元素 ( <foo>bar</foo><foo>bar</foo>) 或
  • 如何处理元素等等。

这就是为什么我想知道我是否缺少某种预定义的界面,因为诸如此类的“正常”元素也应该需要许多这些功能strong, em, h1,…,h6

如果您需要更多信息,请告诉我,任何提示或指示将不胜感激。

4

1 回答 1

1

出于格式化目的Formatter.js,tinymce 核心文件中有类。但是你想要的非常复杂。我们试图阻止tinymce 嵌套跨度并Formatter.js根据我们的需要进行调整。

于 2012-12-04T10:18:40.093 回答