CKEditor正在对源代码进行调整

时间:2014-06-23 19:52:40

标签: javascript ckeditor

如果我输入如下所示的行:

<div id="footer"></div>

在我切换回WYSIWYG模式后,有一个&amp; nbsp插入如下:

<div id="footer">&nbsp</div>

我在另一个Stackoverflow线程中看到之后尝试编辑配置,如下所示,但同样的问题占优势。有什么帮助吗?

//Whether to prompt the user about the clean up of content being pasted from MS Word.
config.pasteFromWordPromptCleanup = true;

config.enterMode = CKEDITOR.ENTER_DIV;
CKEDITOR.config.forcePasteAsPlainText = false; // default so content won't be manipulated on load
CKEDITOR.config.basicEntities = true;
CKEDITOR.config.entities = true;
CKEDITOR.config.entities_latin = false;
CKEDITOR.config.entities_greek = false;
CKEDITOR.config.entities_processNumerical = false;
CKEDITOR.config.fillEmptyBlocks = function (element) {
    return true; // DON'T DO ANYTHING!!!!!
};

CKEDITOR.config.allowedContent = true; // don't filter my data
config.shiftEnterMode = CKEDITOR.ENTER_BR;
config.language = 'en';

config.pasteFromWordRemoveFontStyles = false;
config.pasteFromWordRemoveStyles = false;

1 个答案:

答案 0 :(得分:1)

CKEditor 正确使用<div>填充空&nbsp;。您正在尝试错误地使用CKEditor。当你将那个空块加载到CKEditor中时,CKEditor会看到它,并且知道除非它被扩展,否则它不会被插入符号访问。因此编辑器会插入一些内容(我会说些什么,因为它取决于案例)。

请记住CKEditor is a document editor, not web page builder

据说,可以选择阻止这种自然的CKEditor行为 - config.fillEmptyBlocks

CKEDITOR.replace( 'editor1', {
    fillEmptyBlocks: false
} );

这将使所有块都空。

PS。文档中有一个错误 - 此选项不接受回调。