我想知道如何在SVG中包含jpg图像!
var ns = 'http://www.w3.org/2000/svg';
var svg = document.createElementNS(ns, 'svg');
svg.setAttribute('width', 800);
svg.setAttribute('height', 450);
var image = document.createElementNS(ns, 'image');
image.setAttribute('href', 'http://placehold.it/300x300');
image.setAttribute('x', 0);
image.setAttribute('y', 0);
image.setAttribute('width', 800);
image.setAttribute('height', 450);
svg.appendChild(image);
document.body.appendChild(svg);
我的错误在哪里?
答案 0 :(得分:2)
对于Safari,您需要更改
image.setAttribute('href', 'http://placehold.it/300x300');
到
image.setAttributeNS('http://www.w3.org/1999/xlink', 'href', 'http://placehold.it/300x300');
第二种做法是兼容Chrome / Firefox。
Safari可能会支持你未来的方式,因为它是即将发布的SVG 2规范的一部分,第二种方式是SVG 1.1的做法。