@Touchpardus

Как скрыть поисковое поле при скролле?

Header зафиксированный, при первичном входе на сайт все работает, но а при скролле во второй и третий раз все слетает, и поисковое поле не исчезает. В чем может быть ошибка? Сайт на битриксе

if ($('.i_header_bottom_block').length)
	{
		const $headerButtonBlock = $('.i_header_bottom_block');
		let $header = $('header');
		const $headerButtonBlockOffset = $headerButtonBlock.offset().top - 20;

		let fixedHeader = false;

		if ($(".i_search:hidden")){
			$('.i_search_button').addClass('displaynone');
		}


		$(window).on('scroll', function () {
			if ($(this).scrollTop() >= $headerButtonBlockOffset)
			{
				if (fixedHeader) return;

				$('body').css('paddingTop', $header.height() + 5 + 'px');
				//
				$header.addClass('i_header_fixed');
				//
				$('header').css('paddingBottom', '0px');
				//$('.j_search_button').addClass('j_search_button-act');

				$('.i_search_button').removeClass('displaynone');

				$('.i_search_button').click(function(){
					$('.i_search_button').toggleClass('displaynone');
				});

				$('i_header_search_mobile').css('paddingBottom', '0px');
				fixedHeader = true;

			}
			else
			{
				if (fixedHeader) false;
				$('body').css('paddingTop', '0px');
				//
				$('header').removeClass('i_header_fixed');
				//$('.j_search_button').removeClass('j_search_button-act');
				fixedHeader = true;
			}

			if (fixedHeader && $header.width() !== $('.i_wrapper').width())
			{
				$header.css('width', $('.i_wrapper').width() + 'px');
			}
		});
	}
  • Вопрос задан
  • 38 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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