Код: Выделить всё
.scroll-snap-wrapper {
scroll-snap-type: y mandatory;
-ms-overflow-style: none;
scrollbar-width: none;
}
.scroll-snap-wrapper::-webkit-scrollbar {
display: none;
}
.card-1 {
scroll-snap-align: start;
}
.card-2 {
scroll-snap-align: start;
}
.card-3 {
scroll-snap-align: start;
}
.card-4 {
scroll-snap-align: start;
}
.card-5 {
scroll-snap-align: start;
}
Я пытался применить тот же эффект привязки к оболочке, но кажется, что она не может быть родительской и дочерней в то же время. Я также пытался создать код JavaScript, который гарантировал бы, что оболочка начнет прокручиваться только тогда, когда она полностью в поле зрения, но это не сработало.
Моей последней попыткой была попытка использовать анимацию GSAP ScrollTrigger для защелкните обертку. Я не уверен, что что-то запрещает им работать одновременно, но когда я добавляю этот код, карты внутри оболочки больше не видны.
Код: Выделить всё
document.addEventListener('DOMContentLoaded', function () {
gsap.registerPlugin(ScrollTrigger);
// Set up ScrollTrigger for the .scroll-snap-wrapper
ScrollTrigger.create({
trigger: '.scroll-snap-wrapper', // Target the wrapper
start: 'top top', // When the wrapper reaches the top of the viewport
end: '+=100%', // Adjust the end of the trigger
pin: true, // Pin the wrapper while scrolling
scrub: true, // Smooth scrubbing
markers: false, // Disable markers for debugging
});
});
Подробнее здесь: https://stackoverflow.com/questions/793 ... -container