我开始编写一段 jQuery 代码,它运行一个包含三个图像的简单滑块,它一个一个地显示和隐藏它们,并且应该无限期地重复这个过程。
这是代码:
$(document).ready(function () {
function start_slider() {
$('#slider_img_1').animate({
top: '-=495'
}, 1000).delay(4000).animate({
top: '+=495'
}, 1000);
$('#slider_img_2').delay(6000).animate({
top: '-=495'
}, 1000).delay(4000).animate({
top: '+=495'
}, 1000);
$('#slider_img_3').delay(12000).animate({
top: '-=495'
}, 1000).delay(4000).animate({
top: '+=495'
}, 1000);
setTimeout(function () {
start_slider();
}, 18000);
}
start_slider();
});
现在据我了解,它为第一张图片设置动画 1 秒,将其保持 4 秒,然后将其动画返回 1 秒。其他 2 也一样。数学适合吗?它总共持续 18 秒,然后重新开始。
问题: 它可能完美运行 3-5 分钟,然后我看到 2 个图像重叠一次。10 分钟后开始更频繁地重叠,并且随着时间的推移缓慢增加。
可能是什么问题呢?(注意:Firefox 和 chrome 中的相同错误)