我在我的一个项目中使用了小型mce,客户端不想使用小型mce的Horizontal工具栏。他想要一个集中的自定义工具栏,用户可以在其中控制所有属性,如文本颜色,文本类型,大小,背景以及使用模板设计网页时需要做的每件事。我使用默认工具栏配置了mce实例,并从自定义工具栏控制了属性。并且属性作为一个整体应用于微小的mce实例。但现在,要求已经出现了,文本编辑应该是MS办公室风格。这意味着,如果用户将光标放在一个地方并改变颜色,不会有任何影响,但如果他从光标位置开始输入文本应该具有最近设置的颜色。我尝试使用外部工具栏选项。但是,我的工作区和自定义工具栏处于不同的z索引级别。因此,定位工具栏失败。如果我将工具栏附加到我的自定义工具栏,则它无法单击。那么,如何使用自定义工具栏调用微小的mce核心功能呢?
或者,请建议,我应该更改编辑器吗?那么,我应该去哪一个?
修改 根据建议,我正在编写函数保存属性样式并在插入位置插入跨度。但我面临一些问题,花了一整天后就无法做到。我可以使用以下代码在插入位置添加span。
marker = ed.selection.getBookmark();
ed.selection.moveToBookmark(marker);
tinyMCE.execCommand('mceInsertContent',false,'<span id="mytitle"></span>');
但是,我仍未在新范围内打字。另外,我无法弄清楚如何设置样式到这个范围。
答案 0 :(得分:0)
如果你的目标是使你的行为像MS Office一样,你应该编写一个自己的插件来处理这个问题。
我建议如果用户将光标放在一个地方并更改颜色,则将此颜色保存为您的tinymce实例的设置,如:ed.color = 'choosencolor';
当用户现在开始输入时,您可以在第一次击键时插入一个范围,并将颜色设置为此跨度的css类或样式属性。