我正在制作自己的图像滑块,但是我已经陷入了这个奇怪的问题。
我正在使用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秒才能启动。