[英]How to import a javascript library CDN into a javascript file and use that same library in that file?
[英]How to overwrite a file required by a javascript library hosted in a CDN (elsewhere)?
我想在我正在设计的网页中添加CKEditor,方法是添加其在内容交付网络( jsdelivr )中托管的Javascript库。 问题是:必须自定义ckeditor.js依赖的两个文件contents.css和config.js(我这样做并包含在我的HTML文件所在的同一文件夹中)给出404错误; ckeditor.js在CDN文件夹中查找那些文件,而忽略了我在本地文件夹中添加的文件。
这就是我添加js文件的方式:
我计划将来使用CDN中的库,并期望得到类似的错误。 我究竟做错了什么? 有什么建议么?
谢谢
那就对了。 当您在CDN上上传js文件或css文件时,并且内部有相对路径,那么浏览器会尝试找出相对于css或js文件的资源。 这就是为什么您会收到此错误。 如果您将所有内容都上传到CDN中,那么应该没有任何问题。
如果要将某些文件保留在CDN上,而将其他文件保留在本地,则应在资源中指定绝对路径。
CKEditor为此提供了一个选项: http : //docs.cksource.com/CKEditor_3.x/Developers_Guide/Specifying_the_Editor_Path
尝试添加
var CKEDITOR_BASEPATH = '//mylocalserver/ckeditor/';
加载ckeditor.js之前
也许这对您有用。
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文件的body结束标记之前。
这两个文件并不是真正需要的。
您可以指定一个不同的自定义配置文件,并在该文件中指定不必尝试加载任何其他配置文件,并且contents.css也是默认值,但是您可以在配置文件中指定指向该文件的路径。您要用来设置编辑器内容样式的文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.