目前我使用这个代码在我的主页,创建幻灯片:白色背景()
var images = [
"/d/assets/images/IT/homepage/slider-1.jpg",
"/d/assets/images/IT/homepage/slider-2.jpg",
"/d/assets/images/IT/homepage/slider-3.jpg",
"/d/assets/images/IT/homepage/slider-4.jpg",
"/d/assets/images/IT/homepage/slider-5.jpg",
];
var imageHead = document.getElementById("slider-home");
var i = 0;
setInterval(function() {
$('#slider-home').fadeOut(200,
function() {
imageHead.style.backgroundImage = "url(" + images[i] + ")";
i = i + 1;
if (i == images.length) {
i = 0;
}
$('#slider-home').fadeIn(200)
}
);
}, 5000);
代码工作完美,更改背景图像中,每隔5秒。不幸的是,每一次改变之间都有一个小小的白色背景,过渡似乎并不像Ryanair主页上的幻灯片那样“干净”和“流畅”:https://www.ryanair.com/it/it/
问题产生的原因在哪里,我怎么解决它?
当两个图片有一个背景出现阿尔法低于1.你应该有两个图像在彼此之上,并且不应该在第二个图像完全出现之前隐藏第一个图像。 – the4kman
您正在淡出某个元素,切换背景,然后将其淡入。闪光发生在淡出和淡入之前。要在瑞安网站上获得淡入淡出效果重叠你需要有2个元素,一个具有当前背景,另一个具有下一个背景,淡入淡出另一个。你可以使用jquery动画的'queue:false'选项来启用两个动画立即运行。 –