/******* Do not edit this file ******* Simple Custom CSS and JS - by Silkypress.com Saved: May 27 2020 | 20:37:10 */ function checkVisible(elm) { var rect = elm.getBoundingClientRect(); var viewHeight = Math.max(document.documentElement.clientHeight, window.innerHeight); return !(rect.bottom < 0 || rect.top - viewHeight >= 0); } function getMostVisibleElement(selector) { var clientRect = null; var clientRectTop = 0; var maxVisibleHeight = 0; var visibleHeightOfElem = 0; var mostVisibleElement = null; var skipRest = false; var visibleElems = jQuery(selector).each(function(i, element) { if (skipRest === false) { clientRect = element.getBoundingClientRect(); clientRectTop = Math.abs(clientRect.top); if (clientRect.top >= 0) { visibleHeightOfElem = window.innerHeight - clientRectTop; } else { visibleHeightOfElem = clientRect.height - clientRectTop; } if (visibleHeightOfElem >= clientRect.height) { mostVisibleElement = element; skipRest = true; } else { if (visibleHeightOfElem > maxVisibleHeight) { maxVisibleHeight = visibleHeightOfElem; mostVisibleElement = element; } } } }); return mostVisibleElement; } jQuery(document).ready(function() { if (jQuery('.section-nav-sticky').length) { jQuery(window).scroll(function() { if (jQuery('.mobile-header-appear').length) { jQuery('.section-nav-sticky').css('top','100px'); } else { jQuery('.section-nav-sticky').css('top','0px'); } if (checkVisible(document.querySelector('.section-nav'))) { jQuery('.section-nav-sticky').hide(); } else { jQuery('.section-nav-sticky').show(); } if (jQuery('[data-scrollTo]').length) { const index = jQuery(getMostVisibleElement("[data-section]")).attr('data-section') if (index !== undefined) { jQuery("[data-scrollTo]").removeClass('active') jQuery("[data-scrollTo="+index+"]").addClass('active') } clearTimeout(jQuery.data(this, 'scrollTimer')); jQuery.data(this, 'scrollTimer', setTimeout(function() { var left = jQuery(".section-nav-sticky [data-scrollTo="+index+"]").position()['left'] jQuery('.section-nav-sticky, .section-nav').animate( { scrollLeft: '+='+(left-15) }, 250) if (jQuery(window).scrollTop() == 0) { jQuery('.section-nav-sticky, .section-nav').animate( { scrollLeft:0 }, 250) } }, 200)); } }); jQuery("[data-scrollTo]").click(function() { var index = jQuery(this).attr('data-scrollTo'); var adjustment = 0; if (jQuery('.section-nav').length) { var navBottom = jQuery('.section-nav').offset().top + jQuery('.section-nav').height(); var elementPos = jQuery("[data-section="+index+"]").offset().top; var stickyHeaderVisible = (elementPos > navBottom && jQuery('.section-nav-sticky').length); if (stickyHeaderVisible) { adjustment = adjustment + jQuery('.section-nav-sticky').outerHeight(); } } jQuery([document.documentElement, document.body]).animate({ scrollTop: jQuery('[data-section="'+index+'"]').offset().top - adjustment }, 500); }); } });