导入svg.js会删除链接标记内的所有内容

时间:2014-11-28 09:21:23

标签: svg svg.js

我加载像这样的svg文件

var draw=SVG('container');
var rawSVG=$('rawSVG').get('html'); //get content of invisible div with mootools
draw.svg(rawSVG);

在rawSVG DIV中我可以看到链接标签。但是在容器中,链接标记内的所有内容都被删除,我得到空标记

在import.svg.js中唯一与xlink相关的东西:我发现的href与图像有关

element = context.image(attr['xlink:href'])

链接由svg.js创建并由export.svg.js正确保存,但在下次删除时导入。

编辑: 我想将svg图形加载到cms中,而不是能够修改图形。 它工作正常,但在下次导入时,链接标记中的文本将被删除。

编辑2 好的,现在我松开了xlink元素,但保留了子元素

我想要的是更改外部svg文件中的svg节点 我包含一个名为rawSVG的隐藏div 在女巫中,我看到了

 ...//more svg

    <a xlink:href="test/" id="lktest">
      <text y="86.83333396911621" x="100" font-family="Muli" id="txtest">
        <tspan dy="1.8em" x="0" id="tstest">test</tspan>
      </text>
    </a>

  ...//more svg

比我用mootools抓住那个div的内容

var rawSVG=$('rawSVG').get('html');

而不是我

draw.svg(rawSVG);

使其在svg.js中可编辑

但是在我的容器div中我看到了

... //more svg
  <text y="86.83333396911621" x="100" font-family="Muli" id="txtest">
    <tspan dy="1.8em" x="0" id="tstest">test</tspan>
  </text>
... //more svg

使用svg.js创建并导出墨水并正常工作。重新加载后会发生此行为

我的svg节点中有xmlns:xlink =“http://www.w3.org/1999/xlink” 我试过html 5和html 4严格 我尝试使用doctype和没有

的svg

我也尝试过图像并且它们也会掉线 它就像无法识别xml链接命名空间

我试着在这个cuestion的答案的注释中设置xlink的命名空间: xmlserializer strips xlink from xlink:html svg image tag 但没有改变

任何建议我做错了什么?

0 个答案:

没有答案