微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – SVG Elements的动态动画在IE中不起作用

我正在尝试使用 jquery动态添加DOM元素时执行SVG元素的动画.如果我在< body>中添加这些元素如下所示.工作样本为此
http://jsfiddle.net/bZdfH/2/

<svg>
    <script type="text/ecmascript" xlink:href="http://leunen.me/fakesmile/smil.user.js"/>
    <circle cx="60" cy="60" r="20" style="fill: pink; stroke: red;" >
    <animate attributeName="r" dur="4s" values="20; 0; 20" repeatCount="indefinite"/>
    </circle>
 </svg>

当我动态添加它时,动画将不会在IE中启动,但它适用于Chrome和FireFox.这就是我所拥有的.

<svg>
 <script type="text/ecmascript" xlink:href="http://leunen.me/fakesmile/smil.user.js"/>
 <circle cx="60" cy="60" r="20" style="fill: pink; stroke: red;" onmouSEOver="changeImage(this)" >
 </circle>
</svg>
<script>
    function changeImage(circle) {
      while (circle.firstChild) {
        circle.removeChild(circle.firstChild);
      }
      circle.setAttributeNS(null,"fill","blue");
        var animate = document.createElementNS("http://www.w3.org/2000/svg","animate");
        animate.setAttributeNS(null,"attributeName","r");
        animate.setAttributeNS(null,"values","20;0;20");
        animate.setAttributeNS(null,"dur","6s");
        animate.setAttributeNS(null,"repeatCount","indefinite");
        circle.appendChild(animate);
      }
</script>

这是jsfiddle的工作样本.任何人都可以帮助我?

解决方法

IE不支持SMIL动画.
资料来源: http://caniuse.com/#search=svg

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐