在自定义模块中,我包含了 CKEditor
drupal_add_js( 'sites/all/libraries/ckeditor/ckeditor.js',array('weight'=>JS_LIBRARY+1));
drupal_add_js( 'sites/all/libraries/ckeditor/adapters/jquery.js',array('weight'=>JS_LIBRARY+2));
在我的 JS 中,我现在使用在文本区域上创建一个实例
jQuery('#myTextArea').ckeditor();
这以前有效,但现在不行。在 Firebug 中,我看到 ckeditor 正在尝试访问 config.js,并且它正在以下位置查找此内容:页面的 URL。它应该寻找http://example.com/sites/all/libraries/ckeditor/ .
我想不出最近发生了什么变化可能会破坏它!
我尝试将配置 { basePath: '/sites/all/libraries/ckeditor/' }
传递到 ckeditor()
调用中,但这可能会被忽略无法在运行时设置它?
有人知道我做错了什么,或者如果这是一个错误,有解决办法吗?
最佳答案
正如我所评论的,这似乎与编辑器通过 Drupal 的 JS 聚合加载时有关
这是一个对我有用的丑陋的黑客。
编辑sites/all/libraries/ckeditor/ckeditor.js文件,在压缩后的js代码前添加:
window.CKEDITOR_BASEPATH = 'http://example.com/sites/all/libraries/ckeditor/';
然后记住每次升级时都这样做。
PS。信用于basepath hint .关于javascript - Drupal 7 中的 CKEditor 缺少/不正确的基本路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18717778/