Здравствуйте, дорогие дрюпалеры!
Ckeditor добавляет перед вставляемым простым текстом без форматирования лишний абзац
Вот как это происходит наглядно:
Как уговорить Ckeditor не вставлять лишнюю строку?
Вложение | Размер |
---|---|
ckeditor.png | 50.88 КБ |
Здравствуйте, дорогие дрюпалеры!
Ckeditor добавляет перед вставляемым простым текстом без форматирования лишний абзац
Вот как это происходит наглядно:
Как уговорить Ckeditor не вставлять лишнюю строку?
Вложение | Размер |
---|---|
ckeditor.png | 50.88 КБ |
Комментарии
присоединяюсь к вопросу
с фильтрами поиграться попробуйте в форматах ввода
или с галочками в настройках ckeditor
Таже проблема, ставит свои < р > во всех Text area полях, даже там где это не нужно делать. Уже перелопатил все галочки...
Кто нить решил эту проблему?
Не решил никак. Оказалось, что не во всех браузерах происходит такая проблема. В опере к примеру точно текст вставляется без проблем, как надо. А в хроме проблема наблюдается. Поэтому как вариант, можно использовать другой браузер.
как вариант обновите библиотеку редактора и модуль до последних версий, точного рецепта не помню - само уходило
Обновил модуль и библиотеки, после этого и поперло...
Ладно будем выкручиваться.
не было печали - апдейтов накачали... )
В опере... попробую так. Спасибо.
Попробуй в Форматах Ввода для нужного формата (либо Filtered, либо Full HTML, смотря с каким форматом сохраняешь поле) убрать галочку
Преобразователь переводов строки
Преобразует окончания строк в HTML (т.е. в теги <перенос строки> и <абзац>)
Теги абзаца должны пропасть, а вот & nbsp; все равно останется.
msidiagnos01, дело в том, что лишний код добавляется самим ckeditor, ещё до того, как он будет передан фильтру. С фильтрами играть уже пробовал, при любом положении галок результат одинаковый)
Тогда не знаю, FCKEditor также добавлял теги абзаца. Описанные выше манипуляции помогли...
Присоеденюсь к вопросу, перефразируя его немного. Как избавиться от пробела, который вставляется в textarea, если оно остается пустое, т.е. при создании материала, если в textarea ничего не вписывать, до сохранения материала (и естественно после) вставляется пробел.
ИТОГО:
Не нашел решения проблемы. Когда переделал (пересобрал) сайт с ноля (надо было избавиться от мусора, все файлы остались прежними, изменилась только MySql база) проблема сама исчезла 8-(
Такой подход нельзя назвать решением, зато можно вычислить проблему... Похоже "глюк" лежит в SQL базе и чистка кеша не помогает.
У меня только такое объяснение.
axa-xa-xa, всё свидетельствует о том, что это очень странная ошибка)
мда, странная трабла
Если кому еще надо - мне помогла замена метода ввода в настройках ckeditor (по enter поставил < br >, а по shift+enter < p > )
Или если кому надо, то вот скрипт, который косметически убирает личнший абзац.
$(document).ready(function(){
/* Убираем <p> </p> */
$('#main .field-name-body').each(function(index, element) {
if ($(element).find('p:first').html() == ' ') {
$(element).find('p:first').remove();
};
});
/* /убираем <p> </p> */
});
})(jQuery);
Тож проблема возникла поменять местами enter и shiftenter.
Стоит ckeditor version:'3.6.6',revision:'7689' и wysiwyg 7.x-2.x-dev от 2013-Jan-28
К сожалению удалось слегка извращённо поменять, Делюсь:
1.
Через config.js вообще реакции небыло.
Через hook_wysiwyg_editor_settings_alter удалось поменять лишь shiftEnterMode, т.е. Shift+Enter стал писать абзац. Выглядит вот как это:
if ($context['profile']->editor == 'ckeditor') {
$settings['shiftEnterMode'] = 'CKEDITOR.ENTER_P';
};
}
А вот entermode отказался меняться, пришлось залезть в sites\all\libraries\ckeditor\ckeditor.js. Там ищем ;a.config={ и немного дальше находим такой кусок enterMode:1,forceEnterMode:false,shiftEnterMode:2,
и меняем там enterMode:1 на enterMode:2.
У меня заработало. А раз я не нашёл трушного способа, сдеал так. Думаю когда wysiwyg научиться поддерживать ckeditor версии 4.x можно буит нормально сделать.
http://docs.cksource.com/ckeditor_api/symbols/CKEDITOR.config.html#.ente...
config.enterMode = CKEDITOR.ENTER_BR;
Рекомендуют использовать всё таки CKEDITOR.ENTER_P
Мне думается проще отредактировать стили css на вводе и выводе.