4

我刚刚注意到 TinyMCE 编辑器的一个令人讨厌的行为。当我写了几段文字时,我想选择其中的一些并使其成为标题(标题 2 样式),整个文本都会获得该标题样式,而不仅仅是我选择的文本。

当我想应用粗体时,这不会发生 - 在这种情况下,它可以按预期工作;只有选定的文本变为粗体。

我怎样才能改变这种行为?我知道有 HTML 模式可以更改样式,但我担心我的客户对 HTML 不太熟悉,他们只想使用可视模式。

4

4 回答 4

4

我猜这是因为 h2-tags 通常不能作为段落的子节点。您可以根据需要尝试调整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 回答
0

你可以试试下面:

https://www.tiny.cloud/docs-3x/reference/Configuration3x/Configuration3x@force_br_newlines/

试试看force_p_newlines : true,它是否有效。

于 2021-12-28T05:36:53.440 回答