Как сделать анимацию при скролле?
Подскажите как плавно остановить картинки камней когда они доходят до красного блока? один камень должен останавливаеться сверху красного блока, а второй снизу. Спасибо
snippet
Дополнительно:
Использовать событие onscroll и задавать display none
- Нету такого события, onscroll либо свойство либо атрибут
- imko, вам следует изучить JavaScript
- Алексей Гончаров, и вам
- Алексей Гончаров, куда читать конкретно, можно на документацию ссылочку?
- imko, от этого суть меняется? Главное ответ правильный что нужно использовать onscroll. А вы докопались до условностей, заявив что нету такого события.
- imko, scroll, onscroll очень большая разница)
Может быть они ещё выполняют разную функцию?
Нету такого события
Есть. Scroll
- склоку раздувать не надо. Старайтесь писать строго по теме. Если считаете, что комментарии неуместны - пользуйтесь штатными средствами ресурса, раздувать флейм обсуждения комментариев и тем более переходить на личности не надо.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для создания анимации при скролле на веб-странице можно использовать JavaScript и CSS. Вот пример, как можно добавить анимацию при прокрутке страницы:
1. Начнем с HTML структуры. Для этого создадим контейнер, в котором будет находиться элемент, который мы будем анимировать при скролле:
<div class="container"> <div class="element"></div> </div>
2. Теперь добавим стили для контейнера и элемента:
.container { height: 1000px; /* Высота контейнера для прокрутки */ } .element { width: 100px; height: 100px; background-color: red; transition: transform 0.5s; /* Длительность анимации */ }
3. Далее напишем JavaScript код, который будет отслеживать прокрутку страницы и добавлять класс к элементу для запуска анимации:
window.addEventListener('scroll', function() { let element = document.querySelector('.element'); let position = element.getBoundingClientRect().top; let windowHeight = window.innerHeight; if (position < windowHeight) { element.classList.add('animate'); } else { element.classList.remove('animate'); } });
4. Наконец, добавим стили для анимации элемента при прокрутке:
.element.animate { transform: translateY(50px); /* Пример анимации */ }
Теперь, когда пользователь будет прокручивать страницу и элемент попадет в область видимости, он будет анимироваться согласно заданным стилям. Помните, что это всего лишь базовый пример, и вы можете настроить анимацию по своему усмотрению, добавив другие свойства CSS и JavaScript функции.