奇怪的jquery动画行为-动画制作到一半,然后立即完成

奇怪的jquery动画行为-动画制作到一半,然后立即完成,jquery,slider,jquery-animate,Jquery,Slider,Jquery Animate,我正在努力构建自己的图像滑块,但是我被这个奇怪的问题困住了 我使用的是jQuery1.2.4(包含在Wordpress中)。我已经在JSFIDLE和codepen中复制了我的代码,但问题并没有出现——一切正常 我的代码如下: jQuery(function($) { function sliderLogic() { $(slide).animate({ left: "-100%" }, 3000, "linear",

我正在努力构建自己的图像滑块,但是我被这个奇怪的问题困住了

我使用的是jQuery1.2.4(包含在Wordpress中)。我已经在JSFIDLE和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(…),但每次的结果都是一样的

我不知道这会是什么。。。有什么想法吗

更新

这是一个JSFIDLE,显示了我希望发生的事情:

正如您所看到的,当“slider image”div完成其动画时,它会将状态文本更改为“finish”。在我的实际代码中发生的是,“finish”在动画进行到一半时出现,然后动画快速加速

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


它将缓慢开始,以更清楚地显示问题。等待6-7秒,让它启动。

首先,通过查看代码的工作版本,或者至少查看相关的HTML和CSS,它将真正帮助我们诊断问题。其次,jQuery 1.2.4已经过时了(将近10年了!),应该尽快更新到至少1.12。jQuery目前是v3.2.1。您可能应该尽快更新。抱歉,它是1.12.4而不是1.2!使用3.2.1而不是1.12.4还值得吗?@Rorymcrossan是一个正在运行的演示(比如在JSFIDLE中,代码实际运行的地方)还是我的实际代码(其中有很多内容,但不起作用)——哪一个是最好的?或者两者都有?