只允许在tinymce 4现代主题中使用某些格式?

时间:2013-04-16 22:38:05

标签: tinymce

是否存在等同于theme_advanced_blockformats选项的'现代主题'(换句话说,tinymce 4)?

theme_advanced_blockformats允许您通过将以下内容添加到tinymce.init()来限制可用格式集:

tinyMCE.init({
    ...
    theme_advanced_blockformats : "p,div,h1,h2,h3,h4,h5,h6,blockquote,dt,dd,code,samp"
});

TinyMCE theme advanced block formats

我知道可以通过将选项传递给tinymce.init()来明确指定可用的格式,如下所示:

tinyMCE.init({
    ...
    formats :
            bold : {inline : 'span', 'classes' : 'bold'},
            italic : {inline : 'span', 'classes' : 'italic'},
            underline : {inline : 'span', 'classes' : 'underline', exact : true},
    }
});

TinyMCE formats

不幸的是,这需要很多关于每种格式实现方式的详细信息。

有任何建议吗?

4 个答案:

答案 0 :(得分:5)

这是最新的TinyMCE版本(4.1.3)。 虽然“block_formats”设置记录了此功能,但我只能使用以下内容来实现此功能:

   tinymce.init({
    selector: "textarea",
      style_formats: [
       {title: 'Paragraph', block: 'p'},
       {title: 'Heading 2', block: 'h2'},
       {title: 'Heading 3', block: 'h3'},
       {title: 'Heading 4', block: 'h4'},
    ],

 });

这是Tinymce documented custom formats语法的一个简单示例。

答案 1 :(得分:1)

文档现在有点不稳定,但您可以控制什么是有效块,以及使用valid elements定义块的默认属性。声明允许的块和默认样式现在取决于TinyMCE核心而不是主题。 valid_elements声明允许的块,extended_valid_elements声明允许的块的默认属性。

tinymce.init({
  selector: "textarea",
  valid_elements : "a[href|target=_blank],strong/b,div[align],br",
  extended_valid_elements: "img[class=myclass|!src|border:0|alt|title|width|height]",
  invalid_elements: "strong,b,em,i"
});

答案 2 :(得分:1)

我认为这就是你所需要的:

http://www.tinymce.com/wiki.php/Configuration:block_formats

像:

block_formats: "Paragraph=p;Heading 1=h1;Heading 2=h2;Heading 3=h3;Heading 4=h4"

答案 3 :(得分:0)

对于Tinymce 4x,请尝试以下操作:

tinymce.init({
    selector: "textarea",
    block_formats: 'Paragraph=p;Heading 1=h1;Heading 2=h2;Heading 3=h3;Heading 4=h4;Heading 5=h5;Heading 6=h6;Preformatted=pre',
});

https://www.tiny.cloud/docs-4x/configure/content-formatting/#block_formats

ben.hamelin的答案在v4.8.1中对我不起作用。