document.addEventListener('DOMContentLoaded', () => { const loader = document.getElementById('page-loader'); const hideLoader = () => { if (loader) { // Utilisation de la classe Tailwind 'hidden' ou 'display: none' loader.classList.add('hidden'); // Retirer la classe ajoutée dans le head (si nécessaire, mais souvent pas essentiel ici) document.documentElement.classList.remove('hide-loader-instant'); } }; // Vérifie si le loader a déjà été affiché (même logique) const loaderDejaVu = localStorage.getItem('loader_vu') === 'true'; if (!loaderDejaVu) { // CAS : Première Visite SEULEMENT // 1. Définir le marqueur pour cacher le loader lors des prochaines visites localStorage.setItem('loader_vu', 'true'); // 2. Masquer le loader après la fin de l'animation const DUREE_ANIMATION = 800; setTimeout(() => { hideLoader(); }, DUREE_ANIMATION); } // --- Gestion du cache navigateur (pageshow) --- window.addEventListener('pageshow', (e) => { if (e.persisted) { hideLoader(); } }); }); // --- Exécution ultra-rapide pour éviter le flash --- if (localStorage.getItem('loader_vu') === 'true') { // Ajoute une classe pour masquer le loader immédiatement // Ceci doit s'exécuter avant le chargement complet du HTML document.documentElement.classList.add('hide-loader-instant'); }