tinymce генерирует ужасный вывод - PullRequest
2 голосов
/ 01 апреля 2012

Я уже давно пользуюсь tinymce (простая настройка), и он довольно неплохо справляется со стильным оформлением вещей с помощью опций базового стиля - полужирный, курсив, списки и так далее. Хотя иногда, я думаю, когда пользователи копируют и вставляют свои тексты в текстовое поле из текста или чего-то другого, стилизация становится совершенно безобразной, как в этом примере ниже. Есть ли способ ограничить стиль базовыми, которые относятся к кнопкам в простой настройке?

 <p>df</p>
    <p><!--[if gte mso 9]><xml> <w:WordDocument> 
    <w:View>Normal</w:View> <w:Zoom>0</w:Zoom>
<w:TrackMoves />
    <w:TrackFormatting /> <w:PunctuationKerning /> 
    <w:ValidateAgainstSchemas /> 
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> 
    <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> 
    <w:DoNotPromoteQF /> <w:LidThemeOther>RU</w:LidThemeOther> 
    <w:LidThemeAsian>X-NONE</w:LidThemeAsian> 
    <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables /> <w:SnapToGridInCell /> 
    <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:SplitPgBreakAndParaMark /> <w:DontVertAlignCellWithSp /> <w:DontBreakConstrainedForcedTables /> <w:DontVertAlignInTxbx /> 
    <w:Word11KerningPairs /> <w:CachedColBalance /> 
    </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> <m:mathPr> <m:mathFont m:val="Cambria Math" /> <m:brkBin m:val="before" /> 

...

 <w:LsdException Locked="false" Priority="70" SemiHidden="false"    UnhideWhenUsed="false" Name="Dark List" /> 
<w:LsdException Locked="false" Priority="71" SemiHidden="false"  
  UnhideWhenUsed="false" Name="Colorful Shading" /> <w:LsdException Locked="false" Priority="72" SemiHidden="false"    UnhideWhenUsed="false" Name="Colorful List" /> 

1 Ответ

5 голосов
/ 01 апреля 2012

Это очень распространенная проблема. Обычно, когда вы пытаетесь скопировать текст из Word в TinyMCE, он также переносит форматирование. Это может происходить и из других приложений, помимо Word. Чтобы избавиться от всех этих нежелательных тегов, вам нужно использовать плагин вставки . Используйте эти настройки для вашей функции инициализации:

tinyMCE.init({
    // ...
    plugins : "paste",
    paste_text_sticky : true,
    setup : function(ed) {
        ed.onInit.add(function(ed) {
            ed.pasteAsPlainText = true;
        });
    }
    // ...
});

Вы также можете использовать параметр paste_preprocess и / или paste_postprocess для выполнения действия javascript над вставленным кодом.

Вот некоторые дополнительные параметры, которые можно использовать для настройки функциональности:

plugins : "paste,...",
paste_use_dialog : false,
paste_auto_cleanup_on_paste : true,
paste_convert_headers_to_strong : false,
paste_strip_class_attributes : "all",
paste_remove_spans : true,
paste_remove_styles : true,
paste_retain_style_properties : "",

Как сделать по умолчанию текстовую вставку простым текстом

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...