tinymce:以编程方式配置工具栏?

时间:2016-01-04 20:58:09

标签: jquery tinymce tinymce-4

在具有多个tinymce实例的页面中,是否可以向传递给object函数的init中的参数添加逻辑?我可以这样做,如果我写一个函数并调用它两次,每个textarea实例一次,但我想知道它是否在api中可用。

下面,我的选择器会找到两个textarea个实例,我希望每个实例都有不同的工具栏。我认为像activeEditor.settings.toolbar这样的东西可以访问和更改它,但它不起作用。可以在init上配置toolbar吗?

tinymce.init({
     selector: 'textarea',
     plugins:'link image imagetools',  
     toolbar: 'undo redo | cut copy paste',                
     setup:function(ed){
          ed.on("init",function(e){
               if(e.target.id == "conclude"){
                    // NOT WORKING: alter the toolbar:
                    tinyMCE.activeEditor.settings.toolbar = "undo redo";
               }                        
          });
     }
});

修改 这不起作用:

ed.on("BeforeRenderUI", function(e){
     e.target.settings.toolbar = "cut copy";
}

2 个答案:

答案 0 :(得分:1)

有些参数仅在初始化时使用,更改它们不会做任何事情。您可能会尝试做这样的事情(我不确定这会起作用但可能会这样):

 setup:function(ed){
      ed.on("beforeinit", function(e){
           if(e.target.id == "conclude"){
                ed.settings.toolbar = "undo redo";
           }                        
      });
 }

 setup:function(ed){
       if(ed.id == "conclude"){
            ed.settings.toolbar = "undo redo";
       }                        
 }

答案 1 :(得分:0)

最后,我构建了两个不同的对象,每个对象都有自己的一组参数,以传递给多个tinymce.init方法调用。我无法找到一种方法来动态更改toolbar参数,而不是传递的object