创建自定义颜色集 TinyMCE [英] Create Custom Color Set TinyMCE

查看:39
本文介绍了创建自定义颜色集 TinyMCE的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经能够为 TinyMCE 创建自己的字体颜色选择器,但调色板与原始颜色选择器相关联.我想要做的是让我的自定义颜色选择器完全独立于原始颜色选择器(所以我可以同时显示两者).这是我当前的代码,它有效,但两个按钮的调色板相同:

I have been able to create my own Font color picker for TinyMCE, but but the color palette is linked to the original color picker. What I am trying to do is make my custom color picker totally independent of the original one (so I can show both). Here is my current code, and this works, but the color palette is the same for both buttons:

tinymce.create('tinymce.plugins.ExamplePlugin', {
        createControl: function(n, cm) 
            {
                switch(n)
                {
                case "universityColors":
                   var o = {};
                   ed=tinyMCE.activeEditor;
                   o.scriptURL = ed.baseURI.getURI();
                   o['class'] = 'mce_forecolor';
                   o.title='University Font Colors';
                   o.scope=this;
                   o.image = '<?php echo $university->getDto()->getIcoFile();?>',
                   o.onclick = function (color) { ed.execCommand('Forecolor', false, color);/*this.cs.showMenu(); if (this.o.onClick) this.o.onClick(c);*/};
                   o.onselect = function (color) {
                       console.log('selected',color); /*this.color=this.o.color=c; if (this.o.onSelect) this.o.onSelect(c);*/

                       // execute the same command that the regular forecolor plugin uses (choosen theme needs to be advanced! in order to work)
                       ed.execCommand('ForeColor', false, color);
                   };
                   // limit the colors using own setting
                   if (v = ed.getParam('theme_advanced_text_colors')) o.colors = v;

                    var mcsb = cm.createColorSplitButton('universityColors', o);

                    // return the new ColorSplitButton instance
                    return mcsb;
                }
                return null;
            }
       });
    tinymce.PluginManager.add('universityColorPicker', tinymce.plugins.ExamplePlugin);
    tinyMCE.init({
        mode: "specific_textareas",
        editor_selector: "tinyMCE",
        theme : "advanced",
        plugins : "emotions,spellchecker,advhr,insertdatetime,preview, -universityColorPicker", 

         // Theme options - button# indicated the row# only
        theme_advanced_buttons1 : "newdocument,|,bold,italic,underline,|,justifyleft,justifycenter,justifyright,fontselect,fontsizeselect,formatselect",
        theme_advanced_buttons2 : "cut,copy,paste,|,bullist,numlist,|,outdent,indent,|,undo,redo,|,code,preview,|,forecolor,backcolor, universityColors",
        theme_advanced_buttons3 : "insertdate,inserttime,|,spellchecker,advhr,,removeformat,|,sub,sup,|,charmap,emotions",      
        theme_advanced_toolbar_location : "top",
        theme_advanced_toolbar_align : "left",
        theme_advanced_statusbar_location : "bottom",
        theme_advanced_resizing : true,
        theme_advanced_text_colors :"<?php echo implode(',', $university->getDto()->getColors());?>" // example

        });

推荐答案

要应用自定义字体,请参阅此小提琴:http://fiddle.tinymce.com/jYcaab/2

To apply custom fonts see this fiddle: http://fiddle.tinymce.com/jYcaab/2

这篇关于创建自定义颜色集 TinyMCE的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆