D3.js文本元素未正确显示unicode字符

时间:2015-08-04 07:47:21

标签: javascript d3.js svg unicode

我正在尝试使用unicode将➤附加到SVG中,如下所示。

g.append("text")
        .attr("x", 10)
        .attr("y", 10)
        .text("➤");
显示

➤,但不显示➤

2 个答案:

答案 0 :(得分:11)

而不是使用.text()使用.html()

答案 1 :(得分:6)

➤是HTML / XML标记。您没有插入HTML / XML源代码,因此这些转义不会执行任何操作。你可以这样做:

.text('➤');

以相同的编码保存文件,浏览器将其读取为(通常为UTF-8,对于<meta charset="utf-8"/>的页面。

如果你真的不能使用非ASCII字符 - 例如因为你的脚本需要包含多个具有不同字符集的页面,或者因为你的文本编辑器不支持Unicode - 那么你想要的转义类型use是JavaScript字符串文字编码。 ➤是U + 27A4黑色向右箭头,所以:

.text('\u27A4');