TinyMce копирует классы из текущего элемента блока при нажатии Return

При использовании tinyMce в Wordpress, в визуальном редакторе, если я ввожу содержимое в элемент и нажимаю «Возврат», классы из родительского элемента копируются, я бы хотел просто создать новый элемент <p>.

Например, я редактирую

<p class="blip blip--gray one-sixth push-huge--top push--bottom">d aasdas d</p>

Затем я нажимаю возврат, и добавляется следующее:

<p class="blip blip--gray one-sixth push-huge--top push--bottom"></p>

где я хотел бы только добавить

<p></p>

У меня параметр forced_root_block установлен на p


person Nicola Peluchetti    schedule 23.11.2015    source источник


Ответы (3)


Это поведение по умолчанию для tinymce.

Вы можете добавить в свой редактор обработчик tinymce, который запускается событием keyup. При тестировании charCode 13 вы можете определить, была ли нажата клавиша ENTER. Если это так, вы можете удалить классы из фактического абзаца в редакторе:

$(tinymce.get('youreditor_id').getNode()).closest('p').removeAttr('class');
person Thariama    schedule 23.11.2015

Это может быть решением этой проблемы:

tinymce.init({
  selector: 'textarea',  // change this value according to your HTML
  keep_styles: false
});

tinymce — документы по фильтрации контента

person cenk    schedule 11.12.2015
comment
Ваше предложение верно, но я попробовал его в Wordpress 4.3.1 и не смог заставить его работать. - person Nicola Peluchetti; 13.12.2015

Полный ответ, основанный на сообщении @thariama:

        tinyMCE.editors.content.on('keyup',function(e){
            if ( 13 === e.keyCode ) {
               $(tinyMCE.editors.content.selection.getNode()).closest('p').removeAttr('class');
            }
        });
person Nicola Peluchetti    schedule 23.11.2015