fix: prevent hamburger menu from appearing during scroll when closed
- Only apply header-hidden class to navigation menu when it's open - Check for menu-open class before hiding/showing menu on scroll - Closed menu now stays hidden regardless of scroll direction
This commit is contained in:
@@ -409,23 +409,33 @@
|
|||||||
const navMenu = document.querySelector('.navigation-menu');
|
const navMenu = document.querySelector('.navigation-menu');
|
||||||
const backToTopBtn = document.getElementById('back-to-top');
|
const backToTopBtn = document.getElementById('back-to-top');
|
||||||
const currentScroll = window.pageYOffset || document.documentElement.scrollTop;
|
const currentScroll = window.pageYOffset || document.documentElement.scrollTop;
|
||||||
|
const isMenuOpen = navMenu.classList.contains('menu-open');
|
||||||
|
|
||||||
// Hide/show header based on scroll direction
|
// Hide/show header based on scroll direction
|
||||||
if (currentScroll > scrollThreshold) {
|
if (currentScroll > scrollThreshold) {
|
||||||
if (currentScroll > lastScrollTop) {
|
if (currentScroll > lastScrollTop) {
|
||||||
// Scrolling down - hide header
|
// Scrolling down - hide header
|
||||||
actionBar.classList.add('header-hidden');
|
actionBar.classList.add('header-hidden');
|
||||||
|
// Only hide menu if it's open
|
||||||
|
if (isMenuOpen) {
|
||||||
navMenu.classList.add('header-hidden');
|
navMenu.classList.add('header-hidden');
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
// Scrolling up - show header
|
// Scrolling up - show header
|
||||||
actionBar.classList.remove('header-hidden');
|
actionBar.classList.remove('header-hidden');
|
||||||
|
// Only show menu if it's open
|
||||||
|
if (isMenuOpen) {
|
||||||
navMenu.classList.remove('header-hidden');
|
navMenu.classList.remove('header-hidden');
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
// At top - always show header
|
// At top - always show header
|
||||||
actionBar.classList.remove('header-hidden');
|
actionBar.classList.remove('header-hidden');
|
||||||
|
// Only affect menu if it's open
|
||||||
|
if (isMenuOpen) {
|
||||||
navMenu.classList.remove('header-hidden');
|
navMenu.classList.remove('header-hidden');
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Show/hide back to top button
|
// Show/hide back to top button
|
||||||
if (currentScroll > 300) {
|
if (currentScroll > 300) {
|
||||||
|
|||||||
Reference in New Issue
Block a user