config.js で有効にできるCKEditor の機能「forcePasteAsPlainText 」のスイッチが必要です。
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を文字列に変換すると、「pastetext」というパラメーター (forcePasteAsPlainText に属する) を保持するCKEDITOR.config.pluginsという名前のオブジェクトがあることがわかります。しかし、これを読み直したり、設定したりする方法がわかりません。
構成値を変更する 1 つの可能性は、実行時にエディター全体を置き換えてエディター全体を再初期化することだと読みましたが、別の解決策があるはずです!?
PS:私はあなたが以下を使用できることをここで読みましたが、これは私にとってはうまくいきませんでした:
CKEDITOR.on('instanceReady', function(ev) {
ev.editor._.commands.paste = ev.editor._.commands.pastetext;
});