29 lines
618 B
JavaScript
29 lines
618 B
JavaScript
/**
|
|
* .js-sticky-navbar
|
|
* ul
|
|
* li Item 1
|
|
* li Item 2
|
|
*/
|
|
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
|
|
var ticking = false;
|
|
var nav = document.querySelector('.js-sticky-navbar');
|
|
|
|
window.addEventListener('scroll', function(e) {
|
|
if (!ticking) {
|
|
window.requestAnimationFrame(checkScroll);
|
|
ticking = true;
|
|
}
|
|
}, false);
|
|
|
|
// checks scroll direction and shows/hides navbar accordingly
|
|
function checkScroll() {
|
|
var sticky = window.scrollY > 0;
|
|
nav.classList.toggle('navbar-sticky', sticky);
|
|
ticking = false;
|
|
}
|
|
checkScroll();
|
|
|
|
});
|