4

TinyMCE エディターの迷惑な動作に気付きました。たとえば、テキストのいくつかの段落を書き、その一部を選択して見出し (見出し 2 スタイル) にしたい場合、選択したテキストだけでなく、テキスト全体がその見出しスタイルを取得します。

これは、太字を適用したいときに発生しません。この場合、期待どおりに機能します。選択したテキストのみが太字になります。

この動作を変更するにはどうすればよいですか? スタイルを変更できる HTML モードがあることは知っていますが、私のクライアントは HTML にあまり慣れておらず、ビジュアル モードのみを使用したいと考えています。

4

4 に答える 4

4

h2タグは通常、段落の子ノードとして有効ではないためだと思います。必要に応じて、tinymce 構成パラメーターvalid_childrenを調整してみてください。

于 2012-09-24T11:08:28.903 に答える
2

これは TinyMCE の本来の動作であり、変更することはできません。

于 2012-11-01T14:27:58.077 に答える
1

これが私が見つけた回避策です。私にとって素晴らしい作品

tinyMCE.PluginManager.add('FormatingToolbarButtons', function (editor, url) {
['pre', 'p', 'code', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6'].forEach(function (name) {
    editor.addButton("style-" + name, {
        tooltip: "Toggle " + name,
        text: name.toUpperCase(),
        onClick: function () {
            if (this.active()) {
                editor.execCommand('mceToggleFormat', false, name);
                this.active(false)
            }
            else {
                editor.selection.setContent('<' + name + '>' + editor.selection.getContent() + '</' + name + '>');
                this.active(true)
            }
        },
        onPostRender: function () {
            var self = this, setup = function () {
                editor.formatter.formatChanged(name, function (state) {
                    self.active(state);
                });
            };
            editor.formatter ? setup() : editor.on('init', setup);
        }
    })
});

});

于 2016-09-23T06:54:42.353 に答える