Pour partager cette vidéo sur les réseaux sociaux ou sur un site, voici son url :
Sujets que vous pourriez aussi aimer :Sections dépliables en accordéon
Avec ces 
astuces Javascript, nous découvrons les prouesses permises par le 
JQuery. Dans ce volet, il est question d'optimiser l'affichage des rubriques composant une 
page Html.

Dans l'exemple illustré par la capture, quatre rubriques se proposent mais seul le contenu de la rubrique active est visible. Dès que l'internaute clique sur l'entête d'une autre rubrique, son contenu se déploie tandis que celui de la précédente se replie.
Sources Html et JQuery
Pour la démonstration de cette nouvelle 
astuce, nous suggérons d'appuyer l'étude sur une 
page Html référençant ces 
librairies JQuery et agençant déjà les rubriques dans des 
calques. 
Vous le voyez, la décompression livre le fichier de la page Web (index.htm) accompagné de ses 
feuilles de styles dans le 
sous dossier Css et de ses 
librairies JQuery dans le 
sous dossier Js.
- Double cliquer sur le fichier index.htm pour l'ouvrir dans le navigateur par défaut,
Les rubriques sont présentes, certes. Elles sont disposées les unes sous les autres. Mais à ce stade, elles sont toutes déployées. En conséquence, les contenus débordent des limites prévues pour l'affichage.
- A la racine du dossier de décompression, cliquer droit sur le fichier index.htm,
- Dans le menu contextuel, choisir de l'ouvrir avec un éditeur comme le Notepad ++,
C'est ainsi que nous affichons le 
code Html de la 
page Web. Les 
feuilles de styles et les 
librairies JQuery nécessaires au développement de la 
solution en accordéon sont naturellement référencées dans la 
section Head :
...
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="css/mes-styles.css">
<link rel="stylesheet" href="css/les-styles.css">
<script src="js/jquery-1.12.4.js"></script>
<script src="js/jquery-ui.js"></script>
</head>
...
L'implantation des rubriques se fait plus bas dans la 
page Html dans un 
calque parent d'identifiant auCentre:
...
<div id="auCentre">
<div id="Accordeon">
<h3>Les Styles Css</h3>
<div class="interieur">
<p>
Les <strong>CSS</strong> sont des <strong>feuilles de style en cascade</strong> ... 
La moindre modification sur l'un des <strong>styles</strong> est ainsi automatiquement répercutée sur toutes les pages qui l'utilisent.
</p>
</div>
<h3>Le code Javascript</h3>
<div class="interieur">
<p>
Le <strong>code Javascript</strong> est ce que l'on appelle un <strong>code client</strong>.... solliciter le <strong>serveur</strong> et ses <strong>bases de données</strong> pour fournir des résultats contextuels.
<br /><br />
Lorsque nous développons des <strong>sites internet</strong>, il est très important d'<strong>équilibrer les charges</strong>...
</p>
</div>
<h3>Le code PHP</h3>
<div class="interieur">
<p>
Le <strong>code PHP</strong> s'exécute quant à lui sur le <strong>serveur</strong>. ... nouvelles informations liées au <strong>contenu du site</strong>, aux nouveaux inscrits etc...
</p>
<div class="interieur">
<h3>La gestion des événements</h3>
<div>
<p>
Un <strong>langage client</strong> sera utilisé pour des <strong>interactions directes</strong> ... les éléments actifs et détecte une éventuelle <strong>fonction programmée</strong>...
</p>
</div>
</div>
</div>
</div>
...
Les contenus sont relativement denses. C'est la raison pour laquelle, sans cette 
présentation en accordéon, la page est noyée d'informations.
Cette construction est particulièrement importante pour que le 
JQuery en prenne possession. Elle est embarquée dans un 
calque d'identifiant Accordeon. A l'intérieur, elle consiste en une alternance de 
balises H3 et de 
calques (balises Div) respectivement pour les 
entêtes et les 
contenus des rubriques. C'est ainsi que la 
méthode JQuery que nous appliquerons sera en mesure de délimiter ces rubriques, de les replier pour les déployer indépendamment au clic sur l'un des 
entêtes (Balise H3).
Déployer l'affichage au clic
Certes un travail rigoureux de construction Html existe donc en amont. Mais le 
JQuery est définitivement puissant. Et nous allons très vite le constater. Une simple méthode appliquée sur le 
calque parent va suffire à donner vie à ces 
sections en accordéon.
- Dans la section de script en bas de la page Html, ajouter l'instruction JQuery suivante :
...
<script type="text/javascript" language="javascript">
$("#Accordeon").accordion();
</script>
...
Et c'est tout, aussi incroyable que cela puisse paraître. Grâce à l'alias du dollar, nous prenons possession du calque parent. Puis, nous lui appliquons la 
méthode JQuery accordion, sans même lui transmettre le moindre paramètre. Puisque ce code n'est pas encapsulé dans une fonction, c'est au 
chargement de la page Web qu'il prend possession de la construction remarquable réalisée dans ce calque pour en piloter les rubriques par leurs entêtes.
- Enregistrer les modifications (CTRL + S) et revenir sur la page Web (ALT + Tab),
- Rafraîchir le navigateur avec la touche F5 du clavier,

Et comme vous pouvez l'apprécier. Tout rentre automatiquement dans l'ordre. Les rubriques sont repliées sauf la première. Et désormais, un clic sur un entête déploie l'affichage de son contenu aux dépends de la précédente section active.