define(function (require) { return { init: function() { var last_known_scroll_position = 0; var ticking = false; window.addEventListener('scroll', function(e) { if (!ticking) { window.requestAnimationFrame(function() { checkScroll(); }); ticking = true; } }); function checkScroll() { var collapsed = (window.scrollY > 0 && last_known_scroll_position <= window.scrollY) var sticky = window.scrollY > 0; document.querySelector('header').classList.toggle('collapsed', collapsed); document.querySelector('header').classList.toggle('sticky', sticky); ticking = false; last_known_scroll_position = window.scrollY; } checkScroll(); } } });