如何使用svg.js库旋转带有动画的svg?

时间:2019-02-11 11:29:00

标签: javascript jquery animation svg rotation

我正在使用svg.js库将动画制作成svg。我创建了一个圆形表盘,单击指针(在角度上)即可进行旋转。单击指针后旋转的代码,角度定义了单击的指针角度:

PGUSER=username PGPWD=password heroku pg:push localdatabasename DATABASE_URL --app my-appname-23895

应从当前角度旋转到带有动画持续时间的单击的指针角度。我已经在上面的代码中定义了旋转点50、50,但是在* edge浏览器中,指针不会在定义的旋转点(圆形路径)上旋转,而是直接跳到所单击的指针,并且可以看到指针在两个指针之间移动拨盘,指针需要在圆形拨盘上旋转。

在浏览器IE和边缘上,我还需要一定的旋转持续时间,这意味着如果我在210角度上并且单击事件发生在角度300上,则旋转应该发生在210到300之间,但在我的情况下,动画首先旋转完整拨盘的位置,然后返回到发生点击事件的位置。我在旋转之前使用了animate方法,但是在IE浏览器中,指针旋转了整个圆形刻度盘,然后又返回到单击的指针。旋转应从当前角度发生到卡嗒角。带有动画方法的代码:

   function moveHotspotPointer(angle) {
    if (currentBrowser == "ie") {
        var hp = SVG.get('hotspot-pointer');
        hp.rotate(angle, 50, 50);
        // hp.transform({ rotation: 125, cx: 50, cy: 50 })
    } 
   }

0 个答案:

没有答案