CKEditor获取选定的编辑器



>我有一个并排显示两个CKEditor的CMS系统,以便用户可以编辑主体和侧边栏内容。两个编辑器共享相同的工具栏。

我添加了一个插件,允许用户将嵌入式数据添加到编辑器中。唯一的问题是我需要在当前选定的编辑器上显示数据,键盘光标当前正在设置。

如何使用 javascript 或 JQuery 获取当前在工具栏上按下按钮之前选择的 CKEditor 元素。

现在我只能通过直接选择特定的编辑器实例来使其工作。

CKEDITOR.instances.mtxDescription.insertHtml(data); 

但是,我需要能够将数据直接放入所选编辑器中

如果您正在创建 CKEditor 插件,那么您已经拥有对编辑器的引用,它处于活动状态,请查看有关如何创建 CKEditor 插件的基本教程 http://docs.cksource.com/CKEditor_3.x/Tutorials/Timestamp_Plugin

editor.addCommand( 'insertTimestamp',
    {
        exec : function( editor )
        {    
            var timestamp = new Date();
            editor.insertHtml( 'The current date and time is: <em>' + timestamp.toString() + '</em>' );
        }
    });
我会在

编辑器包装器上放置一个类,在存在唯一ID的某个级别,然后像这样:

var myEditor = $(this).closest('.my-class').attr('id');

我能够通过向每个编辑器添加一个模糊事件并存储上次调用该事件时的最后一个 id 来解决此问题。

var currentEditorInstance = 'mtxDescription';   
for(name in CKEDITOR.instances) {
CKEDITOR.instances[name].on('blur', function () {
        currentEditorInstance = this.name;
});
}

最新更新