Javascript 所见即所得无法检测到编辑器
我正在Drupal上下载模块,但我在Wysiwyg方面遇到了问题。它说它需要一个编辑器库,所以我下载了CKEditor模块,它工作得很好。然而,当我进入Wysiwyg配置时,它一直告诉我“检测不到CKEditor的版本。然后它说我应该提取内容,以便在以下位置找到库: sites/all/libraries/ckeditor/ckeditor.jsJavascript 所见即所得无法检测到编辑器,javascript,drupal,ckeditor,drupal-modules,wysiwyg,Javascript,Drupal,Ckeditor,Drupal Modules,Wysiwyg,我正在Drupal上下载模块,但我在Wysiwyg方面遇到了问题。它说它需要一个编辑器库,所以我下载了CKEditor模块,它工作得很好。然而,当我进入Wysiwyg配置时,它一直告诉我“检测不到CKEditor的版本。然后它说我应该提取内容,以便在以下位置找到库: sites/all/libraries/ckeditor/ckeditor.js 我确实做到了,我重置了权限,我查看了不同的安装指南,但似乎没有任何效果。你们中有人知道我如何解决这个问题吗?如果您使用的是最新版本的CKEditor,
我确实做到了,我重置了权限,我查看了不同的安装指南,但似乎没有任何效果。你们中有人知道我如何解决这个问题吗?如果您使用的是最新版本的CKEditor,即版本4,您需要编辑Drupal的WYSIWYG模块。该模块使用注册表验证编辑器版本与CKEditor的版本定义(javascript)不匹配的ular表达式 您需要使用修改后的代码将
wysiwyg/editors/ckeditor.inc
文件从第77行修改为第88行(基本上是while
循环):
while ($max_lines && $line = fgets($library, 500)) {
// version:'CKEditor 3.0 SVN',revision:'3665'
// version:'3.0 RC',revision:'3753'
// version:'3.0.1',revision:'4391'
if (preg_match('@version:\"(?:CKEditor )?([\d\.]+)(?:.+revision:\"([\d]+))?@', $line, $version)) {
fclose($library);
// Version numbers need to have three parts since 3.0.1.
$version[1] = preg_replace('/^(\d+)\.(\d+)$/', '${1}.${2}.0', $version[1]);
return $version[1] . ((isset($version[2])) ? '.' . $version[2] : '');
}
$max_lines--;
}
正则表达式中的单引号已更改为双引号+返回值添加了一个额外的isset
条件