#javascript #html #css #ckeditor #ckeditor4.x
Вопрос:
Мы вставляем содержимое из одного редактора в другой, затем стилизация границ таблицы удаляется.
Раньше этого никогда не случалось в старой версии CKEditor 4.2, но это произошло в версии 4.15.
Если вы вставите следующий HTML-контент в новый редактор, он удалит стиль границ таблицы
Перед содержанием:
https://paste.laravel.io/ec016f9c-1abe-4bb3-ab2b-ee7ccaac1d2c
После Вставки Содержимого
https://paste.laravel.io/9d0ab427-f34c-45c3-8f1e-03949efd95cf
Ниже приведен мой конфигурационный файл:
CKEDITOR.editorConfig = function( config ) {
config.filebrowserBrowseUrl = 'browser.php';
config.filebrowserFileBrowseUrl = 'browser.php';
config.filebrowserImageBrowseUrl = 'browser.php';
config.filebrowserVideoBrowseUrl = 'browser.php'
config.filebrowserFlashBrowseUrl = 'browser.php';
config.uploadUrl = 'browser.php';
config.extraPlugins = 'stylesheetparser,uploadimage,pastetools';
config.filebrowserUploadUrl = 'browser.php';
config.imageUploadUrl = 'browser.php';
config.allowedContent = true;
config.extraAllowedContent = 'table(*)';
config.pasteFromWordRemoveStyles = false;
config.extraAllowedContent = 'table{background*,border*,style*,style,border}';
config.filebrowserUploadMethod = 'form';
config.disableNativeSpellChecker = false;
config.toolbar_Full = [
{ name: 'document', groups: ['mode', 'document', 'doctools'] },
{ name: 'clipboard', groups: ['clipboard', 'undo'], items: ['Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', 'Undo', 'Redo'] },
// On the basic preset, clipboard and undo is handled by keyboard.
// Uncomment the following line to enable them on the toolbar as well.
{ name: 'insert', items: ['CreatePlaceholder', 'Image', 'Table', 'HorizontalRule', 'Smiley', 'SpecialChar'] },
{ name: 'links', items: ['Link', 'Unlink', 'Anchor'] },
{ name: 'paragraph', groups: ['list', 'indent', 'blocks', 'align'], items: ['NumberedList', 'BulletedList', 'Outdent', 'Indent', 'Blockquote', 'CreateDiv', 'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', 'BidiLtr', 'BidiRtl'] },
{ name: 'basicstyles', groups: ['basicstyles', 'cleanup'], items: ['Bold', 'Italic', 'Underline', 'Subscript', 'Superscript', 'RemoveFormat'] },
{ name: 'styles', items: ['Styles', 'Format', 'Font', 'FontSize'] },
{ name: 'colors', items: ['TextColor', 'BGColor'] },
{ name: 'tools', items: ['UIColor', 'Maximize', 'PageBreak'] },
];
config.removePlugins = 'easyimage, cloudservices, exportpdf';
config.skin = 'moono';
config.toolbar = "Full";
//it will remove additional font style
CKEDITOR.addCss(".cke_editable span[lang] {font-style: inherit;}");
};
//!forcefully show copy/pase dialog box if brower not support due to security concern.
CKEDITOR.on("instanceReady", function(event) {
event.editor.on("beforeCommandExec", function(event) {
// Show the paste dialog for the paste buttons and right-click paste
if (event.data.name == "paste") {
event.editor._.forcePasteDialog = true;
}
// Don't show the paste dialog for Ctrl Shift V
if (event.data.name == "pastetext" amp;amp; event.data.commandData.from == "keystrokeHandler") {
event.cancel();
}
})
});
В принципе, я хочу отключить поведение редактора удаления атрибута стиля таблицы при копировании вставки.
Я перепробовал все возможные решения и много гуглил, но не смог найти никакого решения.
Одно из решений, которое я нашел, это : config.pasteFilter = null;
Я думаю, что это отключит всю фильтрацию, но я просто хочу разрешить границы CKEditor. Дайте мне знать, если кто-нибудь найдет наилучшее возможное решение