我正在考虑让CKEditor4使用尽可能多的文件预先加载。例如,CKEditor自己加载styles.js
文件,它会加载插件的css文件等等。
首先,我尝试通过将插件css文件添加为link
元素来预先加载它们,就像CKEditor4在代码中所做的那样。然后我在ckeditor.js
中禁用了css加载代码,如下所示:(我添加了日志调用和早期返回,其他行未更改。)
appendStyleSheet: function( cssFileUrl ) {
console.log("want css: " + cssFileUrl);
if (true) return; // MARK: all styles are already loaded
if ( this.$.createStyleSheet )
this.$.createStyleSheet( cssFileUrl );
else {
var link = new CKEDITOR.dom.element( 'link' );
link.setAttributes( {
rel: 'stylesheet',
type: 'text/css',
href: cssFileUrl
} );
this.getHead().append( link );
}
},
这不起作用。编辑器没有出现。
或者,我在href
电话中注释了setAttributes
条目。这也行不通。
有人知道它为什么不起作用吗?
(编辑:)我在Windows 7中使用最新的Chrome。
(我将css文件添加到我的静态测试页面中 - 这些就是那些,CKEditor通过按顺序调用appendStyleSheet
函数加载:)
<link rel="stylesheet" href="ext/ckeditor/skins/moono-lisa/editor.css"/>
<link rel="stylesheet" href="ext/ckeditor/plugins/tableselection/styles/tableselection.css"/>
<link rel="stylesheet" href="ext/ckeditor/plugins/balloontoolbar/skins/default.css"/>
<link rel="stylesheet" href="ext/ckeditor/plugins/balloontoolbar/skins/moono-lisa/balloontoolbar.css"/>
<link rel="stylesheet" href="ext/ckeditor/plugins/balloonpanel/skins/moono-lisa/balloonpanel.css"/>
<link rel="stylesheet" href="ext/ckeditor/plugins/copyformatting/styles/copyformatting.css"/>
答案 0 :(得分:0)
我只有一个小小的提示,可能对你有帮助。
尝试删除此内容并查看是否有帮助
CKEDITOR.document.appendStyleText( '.cke{visibility:hidden;}' );