// Animothèque — Navigation + interactions document.addEventListener('DOMContentLoaded', function () { // ── Menu hamburger mobile ────────────────────────────────────── var toggle = document.getElementById('nav-toggle'); var nav = document.getElementById('site-nav'); if (toggle && nav) { toggle.addEventListener('click', function () { var open = nav.classList.toggle('open'); toggle.textContent = open ? '✕' : '☰'; toggle.setAttribute('aria-expanded', open); }); document.addEventListener('click', function (e) { if (!toggle.contains(e.target) && !nav.contains(e.target)) { nav.classList.remove('open'); toggle.textContent = '☰'; toggle.setAttribute('aria-expanded', false); } }); window.addEventListener('resize', function () { if (window.innerWidth > 768) { nav.classList.remove('open'); toggle.textContent = '☰'; } }); } }); // ── Dépliage réponses témoignages ───────────────────────────── function toggleReplies(id) { var list = document.getElementById('replies-' + id); var btn = document.getElementById('replies-btn-' + id); if (!list || !btn) return; var open = list.style.display === 'none' || list.style.display === ''; list.style.display = open ? 'flex' : 'none'; btn.setAttribute('aria-expanded', open); // Met à jour le texte du bouton avec la flèche var txt = btn.textContent.trim(); // Remplace la flèche de fin btn.innerHTML = btn.innerHTML .replace(/[▶▼]/g, open ? '▼' : '▶'); } // ── Formulaire réponse à un commentaire ─────────────────────── function toggleReply(id) { var wrap = document.getElementById('reply-' + id); if (!wrap) return; var open = wrap.style.display === 'none' || wrap.style.display === ''; wrap.style.display = open ? 'block' : 'none'; } // ── Onglets portrait race (Histoire / Caractère / Santé / Entretien) ── function showTab(key) { document.querySelectorAll('.portrait-content').forEach(function(el) { el.classList.remove('active'); }); document.querySelectorAll('.portrait-tab').forEach(function(el) { el.classList.remove('active'); }); var content = document.getElementById('tab-' + key); var btn = document.getElementById('btn-' + key); if (content) content.classList.add('active'); if (btn) btn.classList.add('active'); } // ── FAQ accordion ───────────────────────────────────────────── function toggleFaq(el) { var idx = el.id.replace('fq', ''); var answer = document.getElementById('fa' + idx); if (!answer) return; var open = answer.style.display === 'block'; answer.style.display = open ? 'none' : 'block'; el.classList.toggle('open', !open); }

✉️ Nous contacter

Une erreur dans une fiche ? Une suggestion ? Écrivez-nous, nous répondons sous 48 h.