使用d3放置的Svg- foreignObject不会呈现

时间:2013-01-04 21:35:26

标签: html svg d3.js

Check out my jsbin here

我想要一些包装文字。在recommendation from this post之后,我创建了一个foreignObject,并为其添加了一个'p'元素。

我的文字根本没有出现。

现在,当我在标记中执行EXACT SAME时它会显示(我只是生成svg代码并将其放入svg主体中)。

哎呀,如果我去devtools,右键单击svg,选择“edit as html”并在</svg>右括号前面插入一个新行,我的文字显示出来。

是什么给出了?

1 个答案:

答案 0 :(得分:4)

替换

 .append('p')
    .attr('xmlns', 'http://www.w3.org/1999/xhtml')

.append('xhtml:p')

在javascript中创建节点时,命名空间是特殊的东西,不能被视为属性。 d3使用上面的语法来处理它。