我有一个很好的代码。我不喜欢的是当鼠标离开时动画会停止锐化。这是不好的。我有几个主意:


如何使“停止”更加流畅和用户友好?
离开鼠标后如何进行“反向播放”? (在鼠标离开后从击穿点播放反向动画)

animContainer = document.getElementById('bodymovin');

var params = {
    container: animContainer,
    renderer: 'svg',
    loop: true,
    autoplay: true,
    autoplay:false,
    autoloadSegments: false,
    path: 'data.json'

};

var anim;

    anim = bodymovin.loadAnimation(params);
    animContainer.addEventListener("mouseenter", myScript1);
    animContainer.addEventListener("mouseleave", myScript2);

function myScript1(){

    anim.play();
}

function myScript2(){

    anim.stop();
}

最佳答案

使用上面的示例,此代码对我有用,尽管我不禁想到有一种更干净的方法来完成此操作……(很快就会使工作正常运转)

example1 = document.getElementById('example1');

var params = {
    container: example1,
    renderer: 'svg',
    loop: false,
    autoplay:false,
    autoloadSegments: false,
    path: 'example1.json'
};

var anim;
    anim = bodymovin.loadAnimation(params);
    example1.addEventListener("mouseenter", myScript1);
    example1.addEventListener("mouseleave", myScript2);

function myScript1(){
    bodymovin.setDirection(1);
    anim.play();
}

function myScript2(){
    bodymovin.setDirection(-1);
    anim.play();
};

10-07 14:33