生成的SVG图像无法显示

时间:2014-10-28 17:31:39

标签: javascript svg

我正在开发一个JavaScript类来显示所有SVG对象,但是当我创建元素" image"时,浏览器不会显示它。虽然如果我复制生成的代码并将其放在另一个文档中,则会显示图像。

当我使用Firebug的检查器搜索图像时,会出现该对象但不显示图像。

我使用appendChild()setAttribute()setAttributeNS()

创建了对象

这是生成的代码:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" height="100%" width="100%" >
<image width="50" height="50" xlink:href="logo.png" y="20" x="20" id="d"></image>
</svg>

我做错了什么?

1 个答案:

答案 0 :(得分:1)

问题是命名空间。这是动态创建图像的正确形式:

image.setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', 'flower.png');

更多信息可以在MDN's 'Namespaces Crash Course'找到。