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

Не пойму почему jquery код не работает на странице, но работает в консоли?

Приветствую!

Добавил на страницу такой код:

jQuery(document).ready(function () {
    let navHeader = $('.header-nav');
    let btnTop = $('.scroll-to-top');
   
    $(window).scroll(function () {
        if ($(window).scrollTop() > $('.header').height()) {
            btnTop.fadeIn();
            navHeader.addClass('fixed-header');
        } else {
            btnTop.fadeOut();
            navHeader.removeClass('fixed-header');
        }
    });

    btnTop.on('click', function (e) {
        e.preventDefault();
        $('html, body').animate({
            scrollTop: 0
        }, '300');
    });
});


Участок отвечающий за кнопку с классом scroll-to-top отрабатывает нормально, а вот добавление класса fixed-header к header-nav не срабатывает. Хотя если выполнить этот код в консоли браузера, то все работает... Не пойму в чем может быть проблема?
  • Вопрос задан
  • 87 просмотров
Подписаться 1 Простой 2 комментария
Пригласить эксперта
Ответы на вопрос 1
@Anonimmus
попробуйте так
scrollPrev = 0;
$(window).scroll(function () {
	var scrolled = $(window).scrollTop();
	if (scrolled > $('.header').height() && scrolled > scrollPrev) {
		header.addClass('fixed-header');
	} else {
		header.removeClass('fixed-header');
	}
	scrollPrev = scrolled;
});
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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