gpt4 book ai didi

javascript - wheelnav.js 库菜单项中的 Unicode 实体(在引擎盖下使用 raphael.js)[SVG]

转载 作者:行者123 更新时间:2023-11-30 11:11:07 24 4
gpt4 key购买 nike

因为 wheelnav.js 库允许程序员将菜单项定义为文本或图像。一个菜单元素永远不会同时出现,我需要图标 + 文本我想到了将图标编码为 un​​icode 实体,这对我使用 Font Awesome 来说并不困难。

不幸的是,根据我对 wheelnav.js 源代码的了解,在创建 SVG 文本节点(及其 tspan 子节点)时底层 raphael.js 转义了特殊字符并将 & 更改为 &导致实体按字面显示而不是相应的图标。

我想到的唯一解决方案是从 Font Awesome 网站复制粘贴字符(图标)到标题字符串。它有效,在浏览器中我可以看到一个图标,但在我的 IDE 中我只能看到矩形。
这让其他开发人员不清楚和不可读,我不能指望他们在他们的 IDE 中安装 Font Awesome。

是否有任何其他聪明的方法来防止 wheelnav.js (raphael.js) 转义特殊字符或任何其他解决我的问题的方法?

 var icons = {
'key': '',
'cogs': '',
'connection': '' //copypasting character, that would work.
};

var items = [ {title: icons.key + 'Security'},
{title: icons.cogs + 'Settings'},
{title: icons.connection + 'Connection'} ];

var piemenu = new wheelnav('main_menu');
piemenu.initWheel(items.map(function(item){
return item.title;
}));
piemenu.createWheel();

JSFiddle

它的样子:

How it looks like

它应该是什么样子:

How it should look like

感谢您的帮助:)

最佳答案

您可以尝试使用 JS unicode 字 rune 字,而不是直接使用 HTML 实体或字符。

var icons = {
'key': '\uf084',
'cogs': '\uf085',
...
};

关于javascript - wheelnav.js 库菜单项中的 Unicode 实体(在引擎盖下使用 raphael.js)[SVG],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53634374/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com