将自定义图标添加到tinyMCE按钮

Kep*_*zer 14 javascript plugins tinymce angularjs

我正在尝试将一个Font-Awsome图标添加到我添加到tinyMCE的按钮中:

 ed.addButton('youtube', {
     title: 'Add Video' ,
     icon: 'icon-youtube',
     onclick: function () {
     //do stuff here...
 }
Run Code Online (Sandbox Code Playgroud)

使用像文档建议的图像是不可接受的,但由于某种原因,我无法使这项工作.有任何想法吗?

Kep*_*zer 26

这个基于CSS的解决方案似乎运行良好:

 i.mce-i-[FONT-AWESOME-CLASSNAME]:before {   // FONT-AWESOME-CLASSNAME e.g. "icon-youtube"
    content: "[FONT-AWESOME-CONTENT]";       // FONT-AWESOME-CONTENT e.g. "\f166"
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: inherit;
    color: #000;
    font-size: 1.5em;
    padding-right: 0.5em;
    position: absolute;
    top: 15%;
    left: 0;
 }
Run Code Online (Sandbox Code Playgroud)

它基于matt-royal这个堆栈交换wordpress线程上的答案


Rob*_*osh 10

我知道这已经过时了,但我想我会为任何感兴趣的人提供答案.我正在使用TinyMCE 4.我将其添加到我的CSS中

.mce-ico.mce-i-fa {
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
Run Code Online (Sandbox Code Playgroud)

然后当我设置我刚刚使用的按钮的图标时.

editor.addButton('adjust', {
    tooltip: 'Adjust Layout',
    icon: 'fa fa-adjust',
    onclick: function () {
        dialogLayout(editor, url, settings);
    }
});
Run Code Online (Sandbox Code Playgroud)

基本上这将允许您使用任何字体真棒图标,而无需为每个图标具有特定的类布局.

希望这有助于某人.


SSo*_*ieb 8

根据我的理解,您尝试在图标tinyMCE列表中添加带图像的按钮.

 tinymce.PluginManager.add("youtube", function (editor) {   
    editor.addButton('youtube', {
        tooltip: 'Add video',
        image: tinymce.baseURL + '/plugins/youtube/icons/youtube.gif',
        onclick: function() {

        }
    }); 
});
Run Code Online (Sandbox Code Playgroud)

在此文件夹中创建一个文件夹(我命名为"youtube")创建另一个文件夹(我将你的图像命名为"icons"),然后在youtube文件夹下创建你的文件youtube.js.