🚚 ENTREGA ECOLÓGICA GRÁTIS A PARTIR DE 50 € 🚚
🎁🧦 SWEETSOCKS OFERECIDAS A PARTIR DE 150 € 🧦🎁
console.log(‘Script do menu Drawer carregado (abordagem Liquid)’);
// Funções de abertura/fecho do menu
function openDrawer() {
console.log(‘A abrir o menu deslizante’);
const drawerElement = document.querySelector(‘.drawer-menu’);
drawerElement.classList.add(‘drawer-menu–open’);
document.querySelector(‘body’).classList.add(‘overflow-hidden’);
document.querySelector(‘.header’).classList.add(‘active’, ‘drawer-menu-opened’);
}
function closeDrawer() {
console.log(‘A fechar a gaveta’);
const drawerElement = document.querySelector(‘.drawer-menu’);
drawerElement.classList.remove(‘drawer-menu–open’);
document.querySelector(‘body’).classList.remove(‘overflow-hidden’);
const header = document.querySelector(‘.header’);
header.classList.remove(‘drawer-menu-opened’);
if (window.scrollY < 28) { header.classList.remove('active'); } // Repor para o slide principal ao fechar resetToMainSlide(); } // Navegação entre slides função navigateToSlide(targetSlideId) { console.log('A navegar para o slide:', targetSlideId); // Ocultar o slide ativo atual const currentSlide = document.querySelector('.drawer-menu__slide.active, .drawer-menu__slide--main:not(.slide-out)'); if (currentSlide) { currentSlide.classList.add('slide-out'); if (currentSlide.classList.contains('drawer-menu__slide--main')) { currentSlide.classList.remove('drawer-menu__slide--main'); } else { currentSlide.classList.remove('active'); } } // Mostrar o slide de destino const targetSlide = document.querySelector(`[data-slide="${targetSlideId}"]`); if (targetSlide) { targetSlide.classList.add('active'); targetSlide.classList.remove('slide-out'); } } função navigateBack(targetSlideId) { console.log('A navegar de volta para:', targetSlideId); // Ocultar o slide atual const currentSlide = document.querySelector('.drawer-menu__slide.active'); if (currentSlide) { currentSlide.classList.remove('active'); } // Mostrar o slide de destino const targetSlide = document.querySelector(`[data-slide="${targetSlideId}"]`); if (targetSlide) { if (targetSlideId === 'main') { targetSlide.classList.add('drawer-menu__slide--main'); } else { targetSlide.classList.add('active'); } targetSlide.classList.remove('slide-out'); } } função resetToMainSlide() { console.log('A repor para o slide principal'); // Ocultar todos os slides document.querySelectorAll('.drawer-menu__slide').forEach(slide => { slide.classList.remove('active', 'slide-out'); }); // Mostrar slide principal const mainSlide = document.querySelector('[data-slide="main"]'); if (mainSlide) { mainSlide.classList.add('drawer-menu__slide--main'); } } // Inicializar quando o DOM estiver pronto document.addEventListener('DOMContentLoaded', function() { console.log('DOMContentLoaded - a inicializar o menu deslizante (abordagem Liquid)'); // Gerir o botão do menu móvel const menuButton = document.querySelector('[data-action="open-menu-drawer"]'); console.log('Botão do menu encontrado:', !!menuButton); if (menuButton) { menuButton.addEventListener('click', function(e) { e.preventDefault(); console.log('Botão do menu clicado'); const drawerElement = document.querySelector('.drawer-menu'); if (drawerElement.classList.contains('drawer-menu--open')) { closeDrawer(); } else { openDrawer(); } }); } // Gerir botões de navegação (data-navigate-to) document.querySelectorAll('[data-navigate-to]').forEach(function(button) { const targetSlideId = button.getAttribute('data-navigate-to'); console.log('Adicionando ouvinte de navegação para:', targetSlideId); button.addEventListener('click', function(e) { e.preventDefault(); console.log('Botão de navegação clicado:', targetSlideId); navigateToSlide(targetSlideId); }); }); // Lidar com botões de voltar (data-back-to) document.querySelectorAll('[data-back-to]').forEach(function(button) { const targetSlideId = button.getAttribute('data-back-to'); console.log('Adicionando ouvinte do botão Voltar para:', targetSlideId); button.addEventListener('click', function(e) { e.preventDefault(); console.log('Botão Voltar clicado, a ir para:', targetSlideId); navigateBack(targetSlideId); }); }); });