我在一个 d3js 项目上工作,我看到了一些教程append("g")
和其他教程,append("svg:g")
但没有得到两者之间的区别。
问问题
2054 次
2 回答
11
在 D3 的早期,svg:g
由于 SVG 元素附加到 DOM 的方式,您需要使用语法。更高版本的 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 锚。
于 2013-07-11T15:14:20.907 回答
3
我得到了关于 d3js API 的答案,它是一个命名空间问题。在 svg:g 中,svg 是命名空间(可选)。我的错,对不起,我必须更好地阅读 API
于 2013-07-11T14:12:04.100 回答