1
我有DEFS一個SVG對象:的XMLSerializer搞亂鏈接
defs.append('svg:pattern')
.attr('id', 'blue')
.attr('patternUnits', 'userSpaceOnUse')
.attr('width', '40')
.attr('height', '39')
.append('svg:image')
.attr('xlink:href', 'images/blue.png')
.attr('width', '40')
.attr('height', '39');
在我的代碼我使用的XMLSerializer到POST數據:
var svg1 = tmp.getElementsByTagName("svg");
var svg_xml = (new XMLSerializer).serializeToString(svg1[0]);
在Safari中我得到了想要的結果:
<svg width="850" height="200">
<pattern id="blue" patternUnits="userSpaceOnUse" width="40" height="39">
<image xlink:href="images/blue.png" width="40" height="39"></image>
</pattern>
在Firefox或IE中我得到奇怪的結果:
<svg xmlns="http://www.w3.org/2000/svg" width="850" height="200">
<defs>
<pattern id="blue" patternUnits="userSpaceOnUse" width="40" height="39">
<image a0:href="images/plateColor/blue.png" xmlns:a0="http://www.w3.org/1999/xlink" width="40" height="39"/>
</pattern>
我在做什麼錯? 謝謝 Rolf
Safari瀏覽器的結果看起來無效,它應該定義xlink前綴。 –
在此處找到解決方案: https://groups.google.com/forum/#!topic/d3-js/NCm0rvr4Dyg 這是d3js中的一個錯誤 – Rolf