La bascule de classe avec jQuery

J'aurais besoin de cacher une div lorsque l'utilisateur clique sur un lien.

Le html est quelque chose comme ceci:

<div class="item">
<div class="entry">
Lorem ipsum
</div>
<a href="#" class="commentsToggle">Show/hide comments</a>
<div class="comments hidden">
This comments div I want show/hide
</div>
</div>

<div class="item">
<div class="entry">
Lorem ipsum
</div>
<a href="#" class="commentsToggle">Show/hide comments</a>
<div class="comments hidden">
This comments div I want show/hide
</div>
</div>

....there's multiple items after this

En tant que par défaut les commentaires sont cachés (d'où la classe cachés là). Maintenant, si l'utilisateur clique sur " Afficher/masquer les commentaires lien, il devrait afficher ou masquer les commentaires pour ce point précis, en fonction sont-ils visibles ou non. Maintenant, la question est ai-je besoin d'une pièce d'identité pour le contrôle de js à crochet seulement pour que l'on specicif éléments ocmments et puis-je le faire witouh id?

Le js est quelque chose comme l'atm:

$('.item .commentsToggle').click(function(){
        elem = $(this).parents('.item');

        $(elem).find('.comments').each(function() {
            $(this).toggleClass('hidden');
        });
    });

Si il n'y a qu'une chose qui fonctionne, mais si plusieurs il se décompose :/

C'est assez simple.. j'ai tout simplement pas l'obtenir dans ma tête comment le faire en fait 😀

Je ne peux pas trouver quelque chose de mal avec le code, il fonctionne très bien ici: jsfiddle.net/qMAWP/4

OriginalL'auteur user1069269 | 2011-11-28