我试图将一个Font-Awsome图标添加到我添加到tinyMCE的按钮中:
ed.addButton('youtube', {
title: 'Add Video' ,
icon: 'icon-youtube',
onclick: function () {
//do stuff here...
}
使用像文档建议的图像是不可接受的,但由于某种原因,我无法完成这项工作。任何想法?
答案 0 :(得分:25)
这个基于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;
}
上的答案
答案 1 :(得分:9)
我知道这已经过时了,但我想我会回答任何有兴趣的人。我正在使用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;
}
然后当我设置我刚刚使用的按钮的图标时。
editor.addButton('adjust', {
tooltip: 'Adjust Layout',
icon: 'fa fa-adjust',
onclick: function () {
dialogLayout(editor, url, settings);
}
});
基本上这将允许您使用任何字体真棒图标,而无需为每个图标设置特定的类布局。
希望这有助于某人。
答案 2 :(得分:8)
根据我的理解,您尝试在图标列表tinyMCE中添加带图像的按钮。
tinymce.PluginManager.add("youtube", function (editor) {
editor.addButton('youtube', {
tooltip: 'Add video',
image: tinymce.baseURL + '/plugins/youtube/icons/youtube.gif',
onclick: function() {
}
});
});
在此文件夹中创建一个文件夹(我命名为“youtube”)创建另一个文件夹(我在其中命名为“icons”),然后在youtube文件夹下创建文件youtube.js。
答案 3 :(得分:1)
这个简单的样式表对我有用:
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;
}
它可以同样用于工具栏按钮或菜单项。
ed.addButton('youtube', {
title: 'Add Video' ,
icon: '[FONT-AWESOME-CLASSNAME]',
onclick: function () { /* magic */ }
}
ed.addMenuItem('youtube', {
text: 'Add Video' ,
icon: '[FONT-AWESOME-CLASSNAME]',
onclick: function () { /* magic */ },
context: 'view'
}
请勿使用position: absolute
,因为菜单中的布局会被破坏。
答案 4 :(得分:1)
以下CSS适用于TinyMCE 4和FontAwesome 5:
.mce-ico.mce-i-fas {
display: inline-block;
font-family: 'Font Awesome 5 Free';
font-weight: 900;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale; }
答案 5 :(得分:0)
对于tinymce 5,您可以使用以下示例:
editor.ui.registry.addButton('customButton1', {
text: '<span class="fa fa-youtube"></span>',
//icon: '<span class="icon-youtube"></span>',
onAction: () => alert('Button clicked!')
});