我想为 CKEditor 的功能“ forcePasteAsPlainText ”设置一个开关,您可以在 config.js 中启用它:
CKEDITOR.editorConfig = function( config ) {
config.forcePasteAsPlainText = true;
}
从我网站的 js 文件中,我现在尝试使用 jquery 更改 forcePasteAsPlainText 的值:
if(typeof(CKEDITOR) !== 'undefined') {
$('#filterTextButton').click(function () {
CKEDITOR.config.forcePasteAsPlainText = !CKEDITOR.config.forcePasteAsPlainText;
if(CKEDITOR.config.forcePasteAsPlainText) {
$("#filterSwitch").html("OFF");
}
else {
$("#filterSwitch").html("ON");
}
});
}
问题是我无法访问CKEDITOR.config.forcePasteAsPlainText。我得到一个未定义的。
将对象CKEDITOR.config转换为字符串,我看到有一个名为CKEDITOR.config.plugins的对象持有一个名为“pastetext”的参数(属于 forcePasteAsPlainText)。但我不知道如何重新阅读或设置它。
我读到更改配置值的一种可能性是通过在运行时替换它来重新初始化整个编辑器......但必须有另一种解决方案!?
PS:我在这里读到您可以使用以下内容,但这对我不起作用:
CKEDITOR.on('instanceReady', function(ev) {
ev.editor._.commands.paste = ev.editor._.commands.pastetext;
});