javascript - d3 不会将命名空间属性附加到 svg 元素

标签 javascript svg d3.js

我想知道为什么 D3.js 没有将命名空间属性添加到 SVG 元素。

d3.ns.prefix.ex = 'http://example.com/';
var chart = d3.select('#chart').append('svg:svg');

我认为输出应该是这样的:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:ex="http://example.com/">

其实只是

<svg>

有关完整示例,请参阅此 fiddle :http://jsfiddle.net/7kWDK/

最佳答案

命名空间属性仅在文档作为某种 XML mime 类型提供时才相关,例如图片/svg+xml.

命名空间不会在 html 标记中执行任何操作,例如 jsfiddle,因此 d3 不需要创建它们。

如果您需要命名空间,那么您可以在 html 中手动添加属性,或者切换到 xhtml,其中将自动创建属性。

关于javascript - d3 不会将命名空间属性附加到 svg 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24612067/

相关文章:

javascript - 单击年份时月份模式下的 Angular ui-datepicker 不起作用

javascript - 如何决定有多少 HTML 必须由 JavaScript 生成?

javascript - 无法水平堆叠矩形

javascript - D3 中的 continue 等价于什么?

svg - paperjs 中类似喷雾工具的性能

javascript - 如何在一个 html 页面上应用两个 svg?

javascript - 使用 jquery 发布数据时没有为此对象定义无参数构造函数

javascript - C#'s/Java' s JQuery/JavaScript 中的 List<Type> 数据结构

javascript - 我如何将 id 分配给 svg 元素? (给raphaeljs吧)

javascript - 通过 Javascript 更改 svg 多边形属性