2013-07-24 21 views
1

我想在我正在設計的網頁中添加CKEditor,通過在內容交付網絡(jsdelivr)中添加託管的Javascript庫。問題是:ckeditor.js依賴的兩個文件contents.css和config.js必須自定義(我做了幷包含在我的HTML文件所在的同一文件夾中)會導致404錯誤; ckeditor.js在CDN文件夾中查找這些文件,並忽略我在本地文件夾中添加的文件。如何覆蓋託管在CDN(其他地方)的JavaScript庫所需的文件?

Error Messages as seen on Chrome Console

我這是怎麼加js文件:

How library is added in Head portion

我打算使用的CDN從圖書館的未來和希望得到類似的錯誤。 我在做什麼錯?有什麼建議麼?

謝謝

回答

0

config.js和content.css從jsdelivr.net一起失蹤,他們不應該因爲只有當它加載的所有必需文件的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文件的身體結束標籤前。

1

沒錯。當你在CDN上傳一個js文件或css文件並且裏面有一個相對路徑時,瀏覽器試圖找出相對於css或js文件的資源。這就是你得到這個錯誤的原因。如果您上傳CDN中的所有內容,則不會有任何問題。

如果您想在本地保留CDN和其他文件的某些文件,則應在資源中指定絕對路徑。

+0

我不擁有該CDN,因此我無法將文件上傳到CDN。 – Bogac

1

的CKEditor提供了一個選項爲: http://docs.cksource.com/CKEditor_3.x/Developers_Guide/Specifying_the_Editor_Path

嘗試加載ckeditor.js

也許這做的伎倆爲您之前添加

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

+0

雖然這爲contents.css工作,但它給出了這些錯誤:GET /config.js?t=D5AC 404(Not Found)ckeditor.js:72 GET /skins/moono/editor.css?t=D5AC 404(Not找到)ckeditor.js:72 GET /lang/tr.js?t=D5AC 404(未找到)t是在ckeditor.js中的時間戳 – Bogac

+0

好吧我已經清除CKEDITOR.timestamp =''的時間戳變量。之後,現在每個依賴文件都在BasePath下查看,而不是CDN,這是沒有意義的。 – Bogac

0

這兩個文件並不是真正需要的。

您可以指定不同的自定義配置文件,在該文件中指定,它並沒有試圖加載任何其他的配置文件,其內容。css也是一個默認設置,但是你可以在你的配置文件中指定你想用來設置編輯器內容的文件路徑。

相關問題