@Stanislav6

Как добавить/убрать класс при скроле jQuery?

Ребят, есть небольшой кусок скрипта, который скрывает/проявляет навигацию при скроле. Добавляю класс, чтобы заливка цветом для навигации появлялась при сколе вниз, но не получается сделать так, чтобы заливка цветом отсутствовала в изначальном положении (вверху страницы). Помогите, пожалуйста.

var didScroll;
	var lastScrollTop = 0;
	var delta = 5;
	var navbarHeight = $('header').outerHeight();
	
	$(window).scroll(function(event){
	    didScroll = true;
	});
	
	setInterval(function() {
	    if (didScroll) {
	        hasScrolled();
	        didScroll = false;
	    }
	}, 150);
	
	
	function hasScrolled() {
	    var st = $(this).scrollTop();
	

	    if(Math.abs(lastScrollTop - st) <= delta)
	        return;
	

	    if (st > lastScrollTop ){
	        // Scroll Down
	        $('header').removeClass('show-nav').addClass('hide-nav').removeClass('nocolor');
	        $('.nav-toggle').removeClass('open');
	        $('.menu-left').removeClass('collapse');
	    } else {
	        // Scroll Up
	        if(st + $(window).height() < $(document).height()) {
	            $('header').removeClass('hide-nav').addClass('show-nav').addClass('setcolor');
	        }
	    } 
	
	    lastScrollTop = st;
	}
  • Вопрос задан
  • 51 просмотр
Пригласить эксперта
Ответы на вопрос 1
@Aricus
Код переключения классов заключите в функцию. Вызывайте эту функцию:
1. При загрузке страницы
2. При скроле
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы