使用Word Awesome和jQuery SVG

时间:2013-08-29 15:47:35

标签: jquery svg jquery-svg

this question的帮助下,我能够在静态SVG中显示字体真棒图标。但我们的应用程序使用jQuery SVG,它似乎不允许SVG转义字符。这是一个演示两个并排运行的演示:

http://jsfiddle.net/scruffles/m6Z7Y/4/

<text x="30" y="30">&#xf040</text>

以铅笔形式呈现,但

svg.text(g, 30, 30, '&#xf040');

呈现为&amp; #xf040

3 个答案:

答案 0 :(得分:4)

根据this answer,您应该使用svg.text(g, 30, 30, '\uf040');代替。

http://jsfiddle.net/mblase75/m6Z7Y/6/

答案 1 :(得分:0)

在JavaScript中,您可以在JavaScript源代码中使用原始Unicode(copy/paste the character),也可以在纯ASCII JavaScript代码中使用Unicode escape sequence,而不是使用实体:

svg.text(g, 30, 60, '');       // A unicode f040 character
svg.text(g, 30, 30, '\uf040');

演示:http://jsfiddle.net/m6Z7Y/7/


另请注意,XML实体以&符号开头,以分号结尾 - &…; - 所以最后需要一个分号才能生成有效的XML标记:

<text x="30" y="30">&#xf040;</text>

答案 2 :(得分:0)

我生成了一个对象,其中Font Awesome名称和别名作为键,unicode字符作为值。这样你可以使事情更具可读性:

svg.text(g, 30, 60, FONT_AWESOME.pencil);

以下是完整列表:https://github.com/the-grid/the-graph/blob/master/the-graph/font-awesome-unicode-map.js