我希望能够从文本函数返回html,如下所示:
textEnter.append("tspan")
.attr("x", 0)
.text(function(d,i) {
return 'some text' + '<br/>' + d.someProp;
})
Run Code Online (Sandbox Code Playgroud)
试图使用<br>,但没有奏效.我该如何实现这一目标?
mee*_*mit 20
编辑答案
刚刚注意到你在这里使用tspan.遗憾的是,您无法在svg文本元素中插入换行符.带有SVG的多行文本需要自己分解文本,然后通过设置dy属性进行布局.D3使布局过程非常简单,但仍需要额外的工作.
更多信息,请参阅此处的介绍段落:http://www.w3.org/TR/SVG/text.html
OLD ANSWER(适用于使用html元素,而不是svg)
D3有一个单独的方法:该html()方法,就像未text()转义一样工作.更多信息在这里.所以,很简单,你只需要:
textEnter.append("tspan")
.attr("x", 0)
.html(function(d,i) {
return 'some text' + '<br/>' + d.someProp;
})
Run Code Online (Sandbox Code Playgroud)