$(function () { // DOM ready, take it away gsap.registerPlugin('ScrollTrigger'); gsap.config({ nullTargetWarn: false, }); // Hide Header on on scroll down var didScroll; var lastScrollTop = 0; var delta = 5; var navbarHeight = $('#article-header').outerHeight(); $(window).scroll(function(event){ didScroll = true; }); setInterval(function() { if (didScroll) { hasScrolled(); didScroll = false; } }, 250); function hasScrolled() { var st = $(this).scrollTop(); // Make sure they scroll more than delta if(Math.abs(lastScrollTop - st) <= delta) return; // If they scrolled down and are past the navbar, add class .nav-up. // This is necessary so you never see what is "behind" the navbar. if (st > lastScrollTop && st > navbarHeight){ // Scroll Down $('#article-header').removeClass('nav-down').addClass('nav-up'); } else { // Scroll Up if(st + $(window).height() < $(document).height()) { $('#article-header').removeClass('nav-up').addClass('nav-down'); } } lastScrollTop = st; } // menu constants const openMenu = gsap.timeline({ paused:true, }); const openMenuButton = $('#article-openmenu'); // open menu timeline animations openMenu.to("#article-nav-background", { scale: 150, duration:1.2, ease: Circ.easeOut }); openMenu.to("#article-nav", { autoAlpha:1, delay:-.6, ease: Circ.easeOut }); openMenu.to(".menu-link", { autoAlpha:1, delay:-.6, stagger:.05, y:'-50px', ease: Circ.easeOut }); // open menu function openMenuActions(){ // play timelines openMenu.play().timeScale(1); $('html').addClass('no-scroll'); $('#article-nav-background').css('background-color','#ffffff'); $('.go-back').removeClass('showMenu'); } // close menu function closeMenuActions(){ // reverese timelines openMenu.reverse().timeScale(-2); $('html').removeClass('no-scroll'); $('.go-back').addClass('showMenu'); $(".disabled").removeClass("disabled").attr("tabindex", 0); setTimeout(function(){ $('#article-nav-background').css('background-color','transparent'); }, 600); } // open menu event handler $('#article-openmenu').on('click', function() { // toggle classes $(this).toggleClass('open'); if($(this).hasClass('open')){ openMenuActions(); } else { closeMenuActions(); } }); // escape hide menu $(document).on('keydown', function(event) { if (event.key == "Escape") { closeMenuActions(); } }); }); /*******************************************************************/ /* ftrtch dino */ /* [type: JS] [file:article-menu] [127.2049] DESIGN*/ /*******************************************************************/ /* 0.3 D>D */ /* db 149 */