无法处理JS上的触发动画

时间:2018-09-12 11:17:20

标签: javascript animation promise slider timing

我正在尝试在原始JS中创建无限图像/块滑块

我以标准方式行走,克隆了最后一帧和第一帧,分别将它们插入到第一帧和最后一帧之前,因此滑块看起来像:

“ clone_frame4 [frame1] frame2 frame3 frame4 clone_frame1”

这是[]可见框的标记

一切正常,但倒带除外。我想要达到的效果是:

  • 当“ clone_frame1”完成滑动到可见区域时;
  • 关闭动画;
  • 将滑块后退到“ frame1”;
  • 打开动画;
  • 享受无限滑动)))

    这是代码段

    function enableAnimation(){
        for(i = 0; i < ilen; i++){
            slides[i].className += " animate";
        }
    }
    function disableAnimation(){
        for(i = 0; i < ilen; i++){
            slides[i].className = slides[i].className.replace(" animate", "");
        }
    }
    function rewindToStart(){
        t1().then(t2).then(t4);
    }
    function t1(){
        let promise = new Promise(
            function(resolve, reject){resolve( disableAnimation );});
        return promise;
    }
    function t2(){
        let promise = new Promise(
            function(resolve, reject){resolve( rewindSlide(0) );});
        return promise;
    }
    function t4(){
        let promise = new Promise(
            function(resolve, reject){resolve( enableAnimation );});
        return promise;
    }

所以我希望我的诺言链将在t1()停止动画,在t2()倒退到第1帧,在t4()启用动画。

但不幸的是,滑块会随着动画倒退。似乎我尝试了所有方法来解决它,但是没有任何效果  任何帮助将不胜感激

0 个答案:

没有答案