目前我使用這個代碼在我的主頁,創建幻燈片:白色背景()
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'選項來啓用兩個動畫立即運行。 –