2017-10-06 61 views
1

ckeditor庫的多個版本是否存在於同一頁面上而不與其他版本衝突? jQuery的方式jquery.noConflict模式?在同一頁面上ckeditor的多個版本

用例是我們組織中的不同團隊構建不同的小部件,其中2個團隊正在使用一些分叉和自定義的ckeditor,並且這兩個團隊都是不同的發佈版本。目前,當它們在同一頁面上發生衝突時,它們會被破壞。

任何人都面臨類似的問題,並試圖解決之前?

+0

我試過了。由於全局變量而不可能。我建議你建立一個適用於每個人的共同ckeditor。 https://ckeditor.com/cke4/builder – Aviator

回答

1

CKEditor中沒有這樣的功能。 CKEditor註冊全局變量CKEDITOR,這就是爲什麼加載另一個版本不起作用。在某種閉包下隱藏全局變量可能會非常棘手,而且肯定會需要大量的工作。有很多不同的東西是用CKEditor加載的(就像一些自定義樣式,或者沒有縮小的庫)。所以你也應該關心它。

您應該可以在不同的iframe中加載不同的版本,這將爲您提供單獨的環境,其中不同的版本將單獨運行。

另一個更方便的選擇是隻準備一個適用於每個人的版本,並且爲每個應該不同的實例提供不同的配置。這會在您的頁面上只加載一次庫。例如,您可以使用config.removePlugins刪除一些插件。還有很多其他的東西可以爲每個編輯器實例定製。

+0

我們也得出了相同的結論。使用不同的配置共享相同的編輯器對我們來說並不是一個直接的選擇,因爲我們無法強制其他團隊的版本,也不希望切換到其他版本,因爲每次有其他團隊升級版本時,我們都會必須這樣做。 Iframes雖然不是最乾淨的做法似乎是一個有效的工作 –

相關問題