Задать вопрос

Как сделать так, чтобы при достижении экрана 992px, скрипт javascript отключался?

Делаю адаптив для сайта. Анимация шапки сайта мне мешает изменить высоту для устройств с 992px из-за скрипта (Именно из-за него. Без него шапка сайта при достижении ширины 992px уменьшается по высоте). Есть скрипт (снизу), который необходимо убирать при достижении экрана 992px. В js'e я полный 0 и ничего не умею, но эта штука мне обязательно нужна.

Этот скрипт необходимо убирать при экране меньше чем 992px:

// Уменьшение Шапки при скролле
window.onscroll = function() {
    scrollFunction()
};

function scrollFunction() {
  if (document.body.scrollTop > 80 || document.documentElement.scrollTop > 80) { //80

    document.getElementById('header__main').style.height = "80px";
    document.getElementById('header__logo-img').style.height = "140px";
    document.getElementById('header__menu').style.paddingTop = "0px";
  }
  
  else {
    document.getElementById('header__main').style.height = "136px";
    document.getElementById('header__logo-img').style.height = "170px";
    document.getElementById('header__menu').style.paddingTop = "7px";
  }
}


Помогите пожалуйста
  • Вопрос задан
  • 157 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
Seasle
@Seasle Куратор тега CSS
let headerMain = document.getElementById('header__main');
let headerLogo = document.getElementById('header__logo-img');
let headerMenu = document.getElementById('header__menu');

function applySmallHeader() {
    headerMain.style.height = '80px';
    headerLogo.style.height = '140px';
    headerMenu.style.paddingTop = '0px';
}

function applyNormalHeader() {
    headerMain.style.height = '136px';
    headerLogo.style.height = '170px';
    headerMenu.style.paddingTop = '7px';
}

function onPageScroll() {
    if (document.body.scrollTop > 80 || document.documentElement.scrollTop > 80) {
        applySmallHeader();
    } else {
        applyNormalHeader();
    }
}

window.addEventListener('scroll', function () {
    if (window.innerWidth > 992) {
        onPageScroll();
    }
});

window.addEventListener('resize', function () {
    if (window.innerWidth <= 992) {
        applyNormalHeader();
    } else {
        onPageScroll();
    }
});
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы