奇怪的jquery动画行为 - 动画中途然后立即完成

时间:2017-03-31 08:00:13

标签: jquery slider jquery-animate

我正在制作自己的图像滑块,但是我已经陷入了这个奇怪的问题。

我正在使用jQuery 1.2.4(包含在Wordpress中。)我已经在jsfiddle和codepen中复制了我的代码,问题本身并没有出现 - 一切正常。

我的代码如下:

jQuery(function($) {
    function sliderLogic() {
        $(slide).animate({
                left: "-100%"
            }, 3000, "linear", function(){
                console.log("animation finished");
        });     
    }
});

当我在一段时间内(我从500毫秒测试到6000毫秒)在屏幕上滑动幻灯片(左:0到左-100%)时,幻灯片将以适当的速度移动一半,并且然后几乎立刻突然完成剩下的50%动画 - 不到100毫秒我会说。

在中途标记处,“动画完成”消息出现在日志中 - 即使动画显然还没有完成。

我已经尝试过调用animate函数的其他方法,特别是使用“done”,“complete”,还尝试使用.promise()。done(...),但结果每次都是相同的。< / p>

我不知道这可能是什么......任何想法?

更新

这是一个JSFiddle,显示了我想要发生的事情:fiddle

正如您可以看到“slider-image”div完成其动画时,它会将状态文本更改为“完成”。在我的实际代码中发生的事情是,“完成”出现在动画的中途,然后动画迅速加速。

这是一个JSFiddle,显示了我的实际代码的确切问题:fiddle

它会慢慢开始,以更清楚地显示问题。等待6-7秒才能启动。

0 个答案:

没有答案