Bonjour,
Je suis webdesigner, sur ma dernière réalisation le site : www.rotary-hossegor.fr
j'ai intégré les textes dans un menu accordéon. Malheureusement, je comprends très peu le Jquery et le JavaScript.
Donc chaque slide s'ouvre au clic de souris sur le bouton et se referme que quand je clique sur un autre titre/bouton.
Je souhaiterai intégrer dans ce script le fait qu'il puisse s'ouvrir et se refermer avec un clic de souris sur le même bouton.
Est-ce que vous pouvez m'aider à écrire cette ligne de code ?

voici le code :

<script language="javascript">
        //texte rétractable
        $(document).ready(function() {
        $('div.accordionButton').click(function() {
        $('div.accordionContent').slideUp('normal');
        $(this).next().slideDown('normal');
        });
        $("div.accordionContent").hide();
        });
</script>

Merci infiniment par avance.

3 réponses


Bonsoir,

sans trop changer le code, on pourrait faire quelque chose comme ça.

<script language="javascript">
        //texte rétractable
        $(document).ready(function() {
        $('div.accordionButton').click(function() {
            if(!$(this).next().is(':visible')) {
                $(this).next().slideDown('normal');
            }
            $('div.accordionContent').slideUp('normal'); 
        });
        $("div.accordionContent").hide();
        });
</script>
morea
Auteur

bonjour et merci pour ta réponse,
malheureusement ce code affiche une erreur de syntaxe au niveau du if
comme j'y connais pas grand chose, je sais pas voir s'il manque une ponctuation ou autre chose.
bon dimanche.

j'ai codé ça depuis mon téléphone et je ne me suis pas relu, désolé. en effet il manque une parenthèse fermante à la fin de mon if.

je vais éditer le bout de code précédent.