CKEditor 添加本地插件

Adding local plugins to CKEditor

我正在使用 CDN 使用 CKEditor4 完整版:

<script src="//cdn.ckeditor.com/4.10.0/full/ckeditor.js"></script>

我想给 CKEditor 添加额外的插件,我下载了文件并想添加它们。

我试过了:

CKEDITOR.plugins.addExternal( 'simplebutton', 'http://localhost/ckeditor/plugins/simplebutton', 'plugin.js' );
CKEDITOR.replace( 'editor', {
     extraPlugins: 'simplebutton',
     toolbar: [
         { name: 'simplebutton', items: [ 'simplebutton' ] }
     ]
});

但是我得到了这些错误:

Uncaught SyntaxError: Unexpected token <   ?t=I63Cplugin.js:1 

Uncaught TypeError: Cannot read property 'icons' of null  ckeditor.js:264
at CKEDITOR.resourceManager.<anonymous> (ckeditor.js:264)
at CKEDITOR.resourceManager.<anonymous> (ckeditor.js:263)
at e (ckeditor.js:258)
at Array.y (ckeditor.js:258)
at v (ckeditor.js:258)
at ckeditor.js:259

我会添加其他插件。

是不是因为我必须进入现有的工具栏选项,然后添加新按钮?

这可能有多种原因。

首先查看 addExternal API 文档:

// Loads a plugin from '/myplugins/sample/plugin.js'.
CKEDITOR.plugins.addExternal( 'sample', '/myplugins/sample/' );

// Loads a plugin from '/myplugins/sample/my_plugin.js'.
CKEDITOR.plugins.addExternal( 'sample', '/myplugins/sample/', 'my_plugin.js' );

// Loads a plugin from '/myplugins/sample/my_plugin.js'.
CKEDITOR.plugins.addExternal( 'sample', '/myplugins/sample/my_plugin.js', '' );

请注意,每个示例都有一个尾部 / 字符,因此请尝试使用 CKEDITOR.plugins.addExternal( 'simplebutton', '//localhost/plugins/simplebutton/', 'plugin.js' );

如果仍然无法正常工作,请确保您的网络服务器确实 returns 了正确的内容,因为 SyntaxError: Unexpected token < 看起来像 HTML 而不是 HTML ].您可以使用浏览器网络检查器进行检查。