InkSoul/themes/meme_cdn/assets/js/header.js

40 lines
909 B
JavaScript

window.addEventListener(
'DOMContentLoaded',
(event) => {
/**
* Measure header height for the scrolling fix
*/
const header = document.querySelector('.header');
if (header) {
const headerHeight = window
.getComputedStyle(header, null)
.getPropertyValue('height');
document.documentElement.style.setProperty(
'--header-height',
headerHeight
);
{{ if and .Site.Params.enableHeaderAutoHide (eq .Site.Params.headerLayout "flex") }}
/**
* Auto hide header
*/
let lastScrollY = 0;
window.addEventListener(
'scroll',
throttle(() => {
window.scrollY > lastScrollY
? header.classList.add('hide')
: header.classList.remove('hide');
lastScrollY = window.scrollY;
}, delayTime)
);
{{ end }}
}
},
{ once: true }
);