append(“svg:g”)和append(“g”)之间的区别

时间:2013-07-11 13:59:21

标签: syntax svg append

我参与了一个d3js项目,我看到了append("g")的一些教程和append("svg:g")的其他教程,但两者之间没有区别。

2 个答案:

答案 0 :(得分:10)

在D3的早期阶段,由于SVG元素附加到DOM的方式,您需要使用svg:g语法。 D3的更高版本不需要这些“提示”来插入SVG元素,因此现在正确的方法是使用简单的g


这背后的技术细节相当沉闷,SVG需要命名空间,因此当您插入或操作SVG元素时,使用document.createElementNS('a', "http://www.w3.org/2000/svg)白色纯HTML使用document.createElement('a')。由于D3可以操纵SVG和HTML d3.append('svg:a'),这是一种说法这是一个SVG锚。

答案 1 :(得分:3)

我得到了关于d3js API的答案,这是一个名称空间问题。在svg:g中,svg是命名空间(可选)。 我的错,对不起,我必须更好地阅读API