web-dev-qa-db-ja.com

TinyMCEで<p>の代わりに改行を挿入する

TinyMCEを次のように初期化しました。ユーザーが段落ではなくEnterキーを押したときに、強制的に改行したい。フォローしようとしていますが、機能していません。 TinyMCEバージョン3_3_8を使用しています。

tinyMCE.init({
        mode: "exact",
        theme: "advanced",
        elements: "textAreaId",
        cleanup: false,
        theme_advanced_toolbar_location: "",
        theme_advanced_buttons1: "",
        theme_advanced_buttons2: "",
        theme_advanced_buttons3: "",
        height: 200,
        width: 300,
    forced_root_block : false,
    force_br_newlines : true,
    force_p_newlines : false,
        oninit: InitPosition
    }); //init ends

forced_root_block : ""を定義しようとしましたが、それでも機能しません。

私は何が間違っているのですか?

14
KutePHP

forced_root_block : falseを追加するだけです

または、ラッパーが必要な場合:forced_root_block : 'div'

チャームのように機能します!

19
Thanh Trung

代わりに試してください:

force_p_newlines : false,
force_br_newlines : true,
convert_newlines_to_brs : false,
remove_linebreaks : true,    
14
Thariama

私のために働いたのは:

tinymce.init({
    ...
    force_br_newlines : true,
    force_p_newlines : false,
    forced_root_block : ''
});

各改行は、これらの設定でbrタグを生成しています。

出典: http://www.tinymce.com/wiki.php/Configuration3x:force_br_newlines

9
Nookeen

TinyMCE 4でも同じ状況に直面しました。すべての「Enter」(キーボード)の結果、新しい<p>&nbsp</p>が挿入されました。

forced_root_block : false を使いたくなかったので、tinymce.init関数で何かを理解しました(空の段落はそれぞれ直接クリーンアップされます):

setup : function(editor) {

            editor.on('PostProcess', function(ed) {
                // we are cleaning empty paragraphs
                ed.content = ed.content.replace(/(<p>&nbsp;<\/p>)/gi,'<br />');
            });

        }

https://www.tinymce.com/docs/configure/integration-and-setup/#setuphttps://www.tinymce.com/docs/api/class/tinymce .editor /#postprocess

7
lboix

「forced_root_block:false」オプションはTinyMCE4.0で正常に機能します。

3
gavlinski

テーマfunctions.phpに次のコードを挿入します。

    add_filter( 'tiny_mce_before_init', 'my_switch_tinymce_p_br' ); 

    function my_switch_tinymce_p_br( $settings ) {
        $settings['forced_root_block'] = 'br';
        return $settings;
    }
2
Mikle Gardener

TinyMCE on Mozilla Firefoxは、<div>または<br>の代わりに<p>を追加します。

私は解決策を見つけました:

Mozilla Firefoxを開き、アドレスを入力します:about:config

オプションを検索してfalseにします:editor.use_div_for_default_newlines

1
David