无法弄清楚我的 Carousel 有什么问题

Can't work out whats wrong with my Carousel

我已经使用 Prototype.js 构建了一个图像轮播 - 是的,我知道它已经过时了,那里有一百万个 jQuery 轮播,但我们的平台有很多遗留原型代码,我们无法从 .

升级

旋转木马几乎可以正常工作,但有一个错误我无法解决。单击“下一个”按钮总是可以完美地滑入下一个图像,但单击“上一个”按钮有时只能起作用。上一张图片总是放在开头,但动画中的滑动并不总是发生。

当按下 Next 时,第一张幻灯片使用 margin-left 偏移其宽度,因此它滑出视图,然后附加到队列的末尾并将其 margin-left 重置为 0。

当按下“上一张”时,最后一张幻灯片被添加到队列的前面,然后使用它的宽度向左偏移,然后通过移除偏移滑入到位。

Here's a fiddle 任何帮助将不胜感激

我认为问题是有时将最后一张幻灯片的 margin-left 重置为 0 的函数在它被偏移之前被调用,所以它只出现在前面。

事实证明,修复此问题非常简单,我将幻灯片切换的时间从 0.5 秒更改为 1 秒,错误消失了。仍然不是 100% 确定为什么,但我认为与下一张幻灯片相比,在为上一张幻灯片制作动画时,这些功能需要更长的时间,因此需要更多时间来赶上自己以避免跌倒。