(function($) { "use strict"; $( function() { // decreases header size when user scrolls down avia_header_size(); }); function av_change_class($element, change_method, class_name) { if($element[0].classList) { if(change_method == "add") { $element[0].classList.add(class_name); } else { $element[0].classList.remove(class_name); } } else { if(change_method == "add") { $element.addClass(class_name); } else { $element.removeClass(class_name); } } } function avia_header_size() { var win = $(window), header = $('.html_header_top.html_header_sticky #header'), unsticktop = $('.av_header_unstick_top'); if( ! header.length && ! unsticktop.length ) { return; } var logo = $('#header_main .container .logo img, #header_main .container .logo svg, #header_main .container .logo a'), elements = $('#header_main .container:not(#header_main_alternate>.container), #header_main .main_menu ul:first-child > li > a:not(.avia_mega_div a, #header_main_alternate a), #header_main #menu-item-shop .cart_dropdown_link'), el_height = $(elements).first().height(), isMobile = $.avia_utilities.isMobile, // new entries to calculate the correct line-height and set some styles twoliner = $('.twoliner.menu-item-top-level'), twoliner_text = $('.twoliner.menu-item-top-level > a > .avia-menu-text'), twoliner_no_button = $('.twoliner.menu-item-top-level:not(.av-menu-button) > a > .avia-menu-text'), twoliner_line = $('#top .av_header_transparency .twoliner.menu-item-top-level .avia-menu-fx'), scroll_top = $('#scroll-top-link'), transparent = header.is('.av_header_transparency'), shrinking = header.is('.av_header_shrinking'), header_meta = header.find('#header_meta'), topbar_height = header_meta.length ? header_meta.outerHeight() : 0, set_height = function() { var st = win.scrollTop(), newH = 0, st_real = st; if( unsticktop ) { st -= topbar_height; } if( st < 0 ) { st = 0; } if( shrinking && ! isMobile ) { if( st < el_height/2 ) { newH = el_height - st; if( st <= 0 ) { newH = el_height; } av_change_class( header, 'remove', 'header-scrolled' ); //header.removeClass('header-scrolled'); } else { newH = el_height/2; //header.addClass('header-scrolled'); av_change_class( header, 'add', 'header-scrolled' ); } if( st - 30 < el_height ) { av_change_class( header, 'remove', 'header-scrolled-full' ); } else { av_change_class( header, 'add', 'header-scrolled-full' ); } elements.css({'height': newH + 'px', 'lineHeight': newH + 'px'}); logo.css({'maxHeight': newH + 'px'}); //from here we have new settings for twoliners - go and set the class twoliner for those menu-items twoliner_text.css({ 'display': 'table-caption', 'padding': '0px 9px', 'border-top-width': '2px', 'white-space': 'break-spaces', 'height': newH + 'px', 'lineHeight': (newH/2) + 'px' }); twoliner_no_button.css({ 'border-top-color': 'transparent', 'border-top-style': 'solid' }); twoliner_line.css({'bottom': '0'}); } if( unsticktop.length ) { if( st <= 0 ) { if( st_real <= 0 ) { st_real = 0; } unsticktop.css({"margin-top":"-"+st_real+"px"}); } else { unsticktop.css({"margin-top":"-"+topbar_height+"px"}); } } if( transparent ) { if( st > 50 ) { //header.removeClass('av_header_transparency'); av_change_class( header, 'remove', 'av_header_transparency' ); } else { //header.addClass('av_header_transparency'); av_change_class( header, 'add', 'av_header_transparency' ); } } }; if( $('body').is( '.avia_deactivate_menu_resize' ) ) { shrinking = false; } if( ! transparent && ! shrinking && ! unsticktop.length ) { return; } win.on( 'debouncedresize', function() { el_height = $( elements ).attr( 'style',"" ).first().height(); set_height(); }); win.on( 'scroll', function() { window.requestAnimationFrame( set_height ); }); set_height(); } })(jQuery);