Иногда бывает нужно отслеживать как пользователь скроллит страницу.
Например, Вы можете отслеживать скролл вниз для того чтобы
поднять баннер до верха страницы и держать его там.
А если пользователь открутит страницу к самому верху - вернуть баннер в
исходное положение.
Если Вы читаете эту статью с достаточно широкого экрана, то можете
увидеть подобный баннер справа.
Впервые я сделал такой баннер для сайта
HeiHei.ru
Нужно воспользоваться
window.addEventListener('scroll', () => {
const scrolled = window.scrollY;
Задача - найти элемент с классом rightBanner. Я заранее знаю, что он будет один, но в целом это не важно.
'use strict'
let rb = document.getElementsByClassName('rightBanner');
/* Находим элементы с классом rightBanner */
let rightBannerElement = rb[0];
/* Нам нужен первый, к тому же он единственный */
window.addEventListener('scroll', () => {
const scrolled = window.scrollY;
if (scrolled >= 340)
{
rightBannerElement.style.position='fixed';
rightBannerElement.style.top='50px';
}
/* Зафиксировали баннер после того */
/* как пользователь отскролил вниз */
else if (scrolled < 340)
{
rightBannerElement.style.position='absolute';
rightBannerElement.style.top='480px';
/* Вернули обратно, никаких хитростей */
/* в современных браузерах придумывать не нужно */
});
| Программирование на JavaScript | |
| Сортировка массива | |
| Определить ширину экрана | |
| Определить тип элемента | |
| Mocha Framework - тестирование JavaScript | |
| TicTacToe | |
| Ошибки |
| I recommend our hosting beget.ru |
| Write to info@urn.su, info@aredel.com if you: |
| 1. Want to write an article for our site or translate an article into your native language. |
| 2. Want to place thematically relevant ads on the site. |
| 3. Ads on my site pass maximum censorship. If you see an ad block unsuitable for school-age children, shocking or misleading - please contact us by e-mail |
| 4. Found a mistake, inaccuracy, bug, etc. on the site. ... ....... |
|
5. Articles can be shared on social media by clicking a network icon:
|