Смена изображений при скролле
Приветствую! Подскажите, как реализовать подобный эффект - смена изображения при скролле (слева).
https://www.select-group.ae/developm...g-business-bay ![]() Спасибо! |
|
Цитата:
|
В общем сделал таким способом, но не нравится то, что первое и последнее изображение быстро пропадают (удаляется класс visible). Это можно как то отрегулировать? Какой только threshold не пробовал, не подходит.
const items = Array.from(document.querySelectorAll('.grid .block'));
const imgs = document.querySelectorAll('.fading img');
function detectIntersection(entries) {
for (let e of entries) {
let i = items.indexOf(e.target);
if (e.isIntersecting) {
requestAnimationFrame(ts => {
e.target.classList.add('visible');
imgs[i].classList.add('visible');
});
} else {
e.target.classList.remove('visible');
imgs[i].classList.remove('visible');
}
}
}
const options = {
threshold: 0.5
};
const observer = new IntersectionObserver(
detectIntersection, options
);
items.forEach(i => observer.observe(i));
|
samdo,
по твоей ссылке изображения не удаляются, у них просто плавно меняется opacity (прозрачность). Там зачем-то сделали анимацию на js, но ты можешь сделать по нормальному - через стиль transition в css |
Цитата:
|
| Часовой пояс GMT +3, время: 21:39. |