假设我想以编程方式在以下 SVG<tspan>
的元素中插入一个附加项:<text>
<svg width="300" height="500">
<text x="50" y="100">
<tspan x="50">one</tspan>
<tspan x="50" dy="20">two</tspan>
<tspan x="50" dy="20">three</tspan>
</text>
</svg>
这可以通过纯 JavaScript ( .appendChild
)、jQuery ( .append
) 和 d3.js ( .append
) 来完成。但是,尽管所有三种方法都成功插入了元素,但我似乎只能在 d3.js 插入它时让它实际显示:
请参阅此小提琴中的简化案例:http: //jsfiddle.net/2NLJY/。
这种行为在我测试过的浏览器中是一致的:Firefox、Chrome 和 Safari(所有 OS X 10.8)。
这里发生了什么?