CKEDITOR.editor.on 无法使用 replaceAll

CKEDITOR.editor.on not working with replaceAll

我正在尝试从插件中捕获事件:

$(document).ready(function( ) {
    CKEDITOR.replaceAll( 'js-ckeditor' );

    CKEDITOR.editor.on('simpleuploads.startUpload', function (ev) {
        console.log(ev.data)
    });
});

...但是当我运行它时,我看到错误 TypeError: CKEDITOR.editor.on is not a function。我在这里做错了什么?根据文档编辑器应该有一个方法 "on" (我在检查对象时可以看到)。顺便说一句,textarea 和插件功能都很好,所以 replaceAll 似乎工作正常。

CKEDITOR.editor.on 是工作编辑器实例的一种方法,即 CKEDITOR.replace, while CKEDITOR.editor 返回的只是编辑器构造函数。

改为在 CKEDITOR.replaceAll 之前附加 CKEDITOR.instanceReady 事件并使用事件数据将更多事件附加到特定的编辑器实例:

CKEDITOR.on( 'instanceReady', function( evt ) {
    evt.editor.on( 'simpleuploads.startUpload', function( evt ) {
        ...
    } );
} );

CKEDITOR.replaceAll( 'js-ckeditor' );