1

我想通过添加托管在内容交付网络( jsdelivr)中的 Javascript 库来在我正在设计的网页中添加 CKEditor 。问题是:ckeditor.js 所依赖的两个文件 content.css 和 config.js 必须进行自定义(我做了并包含在我的 HTML 文件所在的同一文件夹中)给出 404 错误;ckeditor.js 在 CDN 的文件夹中查找这些文件并忽略我在本地文件夹中添加的文件。

在 Chrome 控制台上看到的错误消息

这就是我添加js文件的方式:

如何在 Head 部分添加库

我计划将来使用 CDN 中的库,并希望得到类似的错误。我究竟做错了什么?有什么建议么?

谢谢

4

4 回答 4

1

这是正确的。当您在 CDN 上上传 js 文件或 css 文件并且内部有相对路径时,浏览器会尝试找出相对于 css 或 js 文件的资源。这就是您收到此错误的原因。如果您在 CDN 中上传所有内容,则应该没有任何问题。

如果您想在 CDN 上保留一些文件,而在本地保留其他文件,则应在资源中指定绝对路径。

于 2013-07-24T09:36:15.517 回答
1

CKEditor 提供了一个选项:http: //docs.cksource.com/CKEditor_3.x/Developers_Guide/Specifying_the_Editor_Path

尝试添加

var CKEDITOR_BASEPATH = '//mylocalserver/ckeditor/';

在加载 ckeditor.js 之前

也许这对你有用。

于 2013-07-24T09:42:34.573 回答
0

jsdelivr.net 中缺少 config.js 和 content.css,它们不应该是因为 CKEditor 仅在加载所有必需文件时才起作用,并且它允许您在初始加载后更改配置。如果在加载 ckeditor.js 之前将 CKEDITOR_BASEPATH 定义为本地,则必须将任何其他 CKEditor 子文件夹放在本地,因为从现在开始 CKEditor 看起来是本地的,然后使用 CDN 没有意义。

然而这个工作:http ://cdnjs.com/

CDNJS 具有所有默认文件并配置为完整编辑器。如果您不想要完整的编辑器,您可以在第一次加载后定义自定义配置,如下所示:

http://docs.ckeditor.com/#!/guide/dev_configuration

注意:您必须使用自定义配置文件的完整路径,如下所示:

<script type="text/javascript">
CKEDITOR.replace( 'editor1',
{customConfig: '//www.yourdomain.com/yourfolder/config.js'});
</script>

我已将此代码放在我的 html 文件的正文结束标记之前。

于 2013-07-24T12:24:24.300 回答
0

这两个文件并不是真正需要的。

您可以指定不同的自定义配置文件,并在该文件中指定它不必尝试加载任何其他配置文件,contents.css 也是默认值,但您可以在配置文件中指定用于设置编辑器内容样式的文件。

于 2013-07-24T14:07:56.620 回答