Bonjour,
Fut une époque où Alsacréations avait créé son propre tutoriel pour un menu accordéon... et c'est comme cela que j'avais découverts ce forum...
Il y a environ deux semaines j'ai peaufiné un menu accordéon en remplacement d'une première version écrite en jQuery il y a 4/5 ans.
Cette première version s'appuyait sur une liste html et la remappait. La nouvelle version fait de même mais s'appuie cette fois sur les éléments details/summary et est écrite en ES6. J'assume la non rétrocompatibilité avec les navigateurs anciens : ce script s'intégrera à mon prochain framework (plus seulement front mais aussi back) que je prévoie opérationnel pour... dans deux ans, alors bon...
Le CodePen : Accordion v2
Notez que l'apparence de l'accordéon ne changera pas si javascript est désactivé (vous pouvez vous amuser à supprimer le script pour voir). Seul les animations et les comportements optionnels auront disparus.
Voilà, voilà. Le code est fonctionnel mais peut sans doute être optimisé. Je n'ai rien à gagner à ce partage sinon une revue de code de votre part qui me permettrait de m'améliorer. Je suis ouvert à toutes les critiques constructives :
- sur le script
- sur l'accessibilité
- sur le design
- etc...
N'hésitez-pas. Merci.
Modifié par Olivier C (26 Jun 2020 - 06:51)
Fut une époque où Alsacréations avait créé son propre tutoriel pour un menu accordéon... et c'est comme cela que j'avais découverts ce forum...
Il y a environ deux semaines j'ai peaufiné un menu accordéon en remplacement d'une première version écrite en jQuery il y a 4/5 ans.
Cette première version s'appuyait sur une liste html et la remappait. La nouvelle version fait de même mais s'appuie cette fois sur les éléments details/summary et est écrite en ES6. J'assume la non rétrocompatibilité avec les navigateurs anciens : ce script s'intégrera à mon prochain framework (plus seulement front mais aussi back) que je prévoie opérationnel pour... dans deux ans, alors bon...
Le CodePen : Accordion v2
Notez que l'apparence de l'accordéon ne changera pas si javascript est désactivé (vous pouvez vous amuser à supprimer le script pour voir). Seul les animations et les comportements optionnels auront disparus.
Voilà, voilà. Le code est fonctionnel mais peut sans doute être optimisé. Je n'ai rien à gagner à ce partage sinon une revue de code de votre part qui me permettrait de m'améliorer. Je suis ouvert à toutes les critiques constructives :
- sur le script
- sur l'accessibilité
- sur le design
- etc...
N'hésitez-pas. Merci.
Modifié par Olivier C (26 Jun 2020 - 06:51)