feat: refonte de la navbar (responsive, menu hamburger, onglets, design) et mise à jour du footer
This commit is contained in:
@@ -5,6 +5,43 @@ import './stimulus_bootstrap.js';
|
||||
* We recommend including the built version of this JavaScript file
|
||||
* (and its CSS file) in your base layout (base.html.twig).
|
||||
*/
|
||||
|
||||
// any CSS you import will output into a single css file (app.css in this case)
|
||||
import './styles/app.css';
|
||||
|
||||
// --- Gestion du responsive de la barre de navigation (menu hamburger) --- //
|
||||
document.addEventListener('DOMContentLoaded', () => {
|
||||
// --- Gestion de l'affichage du menu hamburger --- //
|
||||
const btn = document.getElementById('mobile-menu-button');
|
||||
const menu = document.getElementById('main-menu');
|
||||
const iconClosed = document.getElementById('icon-menu-closed');
|
||||
const iconOpen = document.getElementById('icon-menu-open');
|
||||
|
||||
if (hamburger && menu) {
|
||||
// Fonction pour gérer l'ouverture/fermeture du menu
|
||||
const toggleMenu = () => {
|
||||
menu.classList.toggle('hidden');
|
||||
// Gestion alternance bouton hamburger ou croix
|
||||
iconClosed.classList.toggle('hidden');
|
||||
iconOpen.classList.toggle('hidden');
|
||||
|
||||
// Mise ne place de l'accessibilité
|
||||
const isHidden = menu.classList.contains('hidden');
|
||||
btn.setAttribute('aria-expanded', !isHidden);
|
||||
};
|
||||
|
||||
// Action au clic sur le bouton hamburger
|
||||
btn.addEventListener('click', toggleMenu);
|
||||
|
||||
// Action au clic sur un des liens du menu
|
||||
const menuLinks = menu.querySelectorAll('a');
|
||||
|
||||
menuLinks.forEach(link => {
|
||||
link.addEventListener('click', () => {
|
||||
// On force la fermeture au clic uniquement si le menu est ouvert sur mobile
|
||||
if (!menu.classList.contains('hidden')) {
|
||||
toggleMenu();
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user