我构建的应用程序会显示很多图标,所以我需要所有 Font-Awesome 类名称的列表,例如 ["fa-dropbox","fa-rocket","fa-globe", ....]
等等,有什么办法可以得到它吗?
原文由 Mohamed Salah 发布,翻译遵循 CC BY-SA 4.0 许可协议
我构建的应用程序会显示很多图标,所以我需要所有 Font-Awesome 类名称的列表,例如 ["fa-dropbox","fa-rocket","fa-globe", ....]
等等,有什么办法可以得到它吗?
原文由 Mohamed Salah 发布,翻译遵循 CC BY-SA 4.0 许可协议
后代的另一个小剧本。
更新 02/2018(版本 5.x)
最新的工作版本,基于 Blasius Secondus 的编辑(感谢)。
打开字体备忘单并在开发人员控制台中运行以下代码片段: https ://fontawesome.com/cheatsheet
var names = new Set();
var icons = document.getElementsByClassName('icon');
for (const icon of icons) {
const name = icon.getElementsByTagName('dd')[0].innerText;
names.add(name);
}
console.log(JSON.stringify(Array.from(names)));
如果您希望它们按部分排序(纯色/常规/品牌):
var groups = {};
var sections = document.getElementsByClassName('cheatsheet-set');
for (const section of sections) {
const names = [];
groups[section.id] = names;
var icons = section.getElementsByClassName('icon');
for (const icon of icons) {
const name = icon.getElementsByTagName('dd')[0].innerText;
names.push(name);
}
}
console.log(groups); // Feel free to stringify/manipulate
原答案
只需打开最新的备忘单:http: //fortawesome.github.io/Font-Awesome/cheatsheet/
然后在浏览器中打开开发者控制台并运行:
var names = [];
$('.row .col-md-4').each(function() {
var s = $(this).text();
var m = s.match(/fa-.*/);
if (m && m[0] && s.indexOf('(alias)') < 0) {
names.push(m[0]);
}
});
console.log( JSON.stringify( names ) );
如果您想要列表而不是数组,请将最后一行替换为
console.log( names.join(' ') );
(你可以使用任何你想要的分隔符而不是空格”)
这种方法的优点是 你只会得到视觉图标(不是 fa-spin 和朋友),而不是重复的别名。
原文由 floribon 发布,翻译遵循 CC BY-SA 3.0 许可协议
13 回答13k 阅读
7 回答2.2k 阅读
3 回答1.3k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
6 回答1.4k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
2017 年 4 月编辑:更新至 4.7.0
正如你的问题的评论中所链接的,Font Awesome 提供了一个 Cheatsheet 页面,其中列出了所有图标预览、类名和字符代码,甚至还列出了别名(
fa-automobile
,例如,它是fa-car
的别名---
)。4.3.0 版本共有 593 个图标类名(包括别名)。这是您想要的格式的列表(包括别名,但没有“(别名)”注释):
这是 4.3 版图标类名称的完整列表,包括别名,作为列表: