При скролле мне нужно зафиксировать меню, я это сделал вот так:
$(function() {
menu_top = $('.header__menu').offset().top;
$(window).scroll(function () {
if ($(window).scrollTop() > menu_top) {
if ($('.header__menu').css('position') != 'fixed') {
$('.header__menu').css('position','fixed');
$('.header__menu').css('top','0');
$('.content').css('margin-top','80px');
}
} else {
if ($('.header__menu').css('position') == 'fixed') {
$('.header__menu').css('position','');
$('.header__menu').css('top','');
$('.content').css('margin-top','');
}
}
});
});
Так же к этому меню мне нужно чтобы скролились некоторые блоки из шапки(контакты, поиск...), для этого я уже сделал разметку как должно всё выглядеть:
<div class="header__scroll__block__container">
<div class="header__scroll__block">
<div class="header__intro__logo">
<a href="#"><img src="logo.svg" alt=""></a>
</div>
<div class="header__intro__contact">
<p class="intro__contact__schedule">Пн-Вс 7:00 - 19:00 (Мск)</p>
<p class="intro__contact__number">+7 (917) 73-533-63</p>
<a href="#" class="intro__contact__call">Заказ звонка</a>
</div>
<div class="search__wrapper">
<input type="search" placeholder="Поиск">
<div class="search__img"><img src="search.svg" alt=""></div>
</div>
<div class="nav__bar__items">
<a href="#" class="nav__bar__login">Войти</a>
<a href="#" class="nav__bar__links"><img class="img-svg" src="like.svg" alt=""></a>
<a href="#" class="nav__bar__links"><img class="img-svg" src="cart.svg" alt=""></a>
</div>
</div>
</div>
Классы
.header__intro__logo .header__intro__contact .search__wrapper .nav__bar__items
нужно достать из своих блоков шапки, и переместить в обвертку
.header__scroll__block__container > .header__scroll__block
. Пробовал
$('header.header').addClass
но класс добавлялся в одну строку к
.header
, а нужно чтобы он создавался внутри
.header
.