使用jquery附加svg; xlink不起作用

时间:2014-01-30 00:51:59

标签: javascript jquery svg

我从后端获得一个svg(当然使用ajax):

<svg width="100%" height="100%" viewBox="0.00 0.00 216.00 153.00"     xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <g id="viewport" class="graph" transform="scale(1 1) rotate(0) translate(4 149)">
    ...
    ...
    <script xlink:href="/js/lib/SVGPan.js"></script>
</svg>

我把它附加到一个空div:

$('#svg').append(result);

但是没有请求SVGPan.js文件。你能解释一下这背后的机制以及我可以做些什么来强制SVGPan.js文件的网络请求吗?

由于

1 个答案:

答案 0 :(得分:0)

我也在寻找同一个问题的答案。现在我知道这个: 当您使用带有script-xlink的内联svg打开html的静态svg时,脚本将下载并运行。当您通过jquery使用script-xlink追加svg时,脚本不会加载。

我没有解决方案,只有workaroud:将整个脚本放在<script><![CDATA[ ... ]]></script>内的<svg>标记内,然后即使你通过jquery追加svg元素它也能工作。