J'ai une liste de produits affichés. Une fois que l'on clique sur le spectacle plus le texte dans la classe extras doit être affiché, le spectacle doit être caché et montrer moins besoin d'être visible. Le contraire doit se produire lorsque vous cliquez sur moins.afficher/masquer le texte pertinent pour une classe basée sur le clic en utilisant jquery
J'ai utilisé le code jQuery ci-dessous et cela fonctionne mais le problème est qu'il montre/cache ajouter le texte supplémentaire dans chaque bloc. Je veux qu'il montre seulement le bloc pertinent.
Javascript
$(document).ready(function() {
$('.extras').css("display", "none");
$('.showmore').click(function() {
$(".extras").toggle();
$('.showmore').hide();
$('.less').show();
});
$('.less').click(function() {
$(".extras").toggle();
$('.extras').hide();
$('.showmore').show()
});
});
HTML
<div class="blocks">
<div class="right">
<ul class="options">
<li class="x"><a href="#">Service 1</a></li>
<li class="y"><a href="#">Service 2</a></li>
<li class="z"><a href="#">Service 3</a></li>
<li class="r"><a href="#">Service 4</a></li>
<li class="k"><a href="#">Service 5</a></li>
</ul>
<div class="showmore"><a>+ show more</a></div>
</div>
<div class="extras">
<p>test text</p>
<div class="less"><a>- hide</a></div>
</div>
</div>
<div class="blocks">
<div class="right">
<ul class="options">
<li class="x"><a href="#">Service 1</a></li>
<li class="y"><a href="#">Service 2</a></li>
<li class="z"><a href="#">Service 3</a></li>
<li class="r"><a href="#">Service 4</a></li>
<li class="k"><a href="#">Service 5</a></li>
</ul>
<div class="showmore"><a>+ show more</a></div>
</div>
<div class="extras">
<p>test text</p>
<div class="less"><a>- hide</a></div>
</div>
</div>
<div class="blocks">
<div class="right">
<ul class="options">
<li class="x"><a href="#">Service 1</a></li>
<li class="y"><a href="#">Service 2</a></li>
<li class="z"><a href="#">Service 3</a></li>
<li class="r"><a href="#">Service 4</a></li>
<li class="k"><a href="#">Service 5</a></li>
</ul>
<div class="showmore"><a>+ show more</a></div>
</div>
<div class="extras">
<p>test text</p>
<div class="less"><a>- hide</a></div>
</div>
</div>
Toute aide sera appréciée.
pouvez-vous le configurer sur jsfiddle s'il vous plaît? –
J'ai écrit un plugin jQuery super simple pour ça il y a un moment. vous pouvez le trouver à http://www.eleven11solutions.com.au/blog/jquery-plugins/moreify – samazi
Avez-vous vu ma réponse avant d'accepter? –