J'ai le code suivant qui devrait changer la valeur d'un h2 de "Afficher plus" à "Afficher moins", puis revenir à nouveau lorsque le parent est cliqué. Le if() teste ok et change le texte en Show Less mais ne le changera plus jamais et affichera toujours l'alerte "Show More" afin qu'il ne détecte pas la condition else().Le texte de bascule jquery ne change qu'une seule fois
J'ai cherché haut et bas pour trouver pourquoi mais je n'ai pas encore trouvé de solution.
Je sais que c'est une question noob alors excusez-moi mais j'ai essayé de trouver la solution avant de poster ici.
Merci.
$('#panels > .feature').click(function() {
if($(this).children('h2').val('Show More')) {
$(this).children('h2').text('Show Less');
alert('Show More was found');
}
else {
$(this).children('h2').text('Show More');
alert('Show Less was found');
}
$(this).next(".info_box").animate(
{'height':'toggle'}, 'slow', 'linear'
);
});
Le code HTML en question est:
<div id="panels">
<div id="Email" class="feature">
<h1>LiveContent</h1><h2>Show More</h2>
</div>
<div class="info_box">Information will go in this div which should slide in and out.</div>
<div id="Email" class="feature">
<h1>Publishing Solutions</h1><h2>Show More</h2>
</div>
<div class="info_box">Information will go in this div which should slide in and out.</div>
<div id="Email" class="feature">
<h1>Title 1</h1><h2>Show More</h2>
</div>
<div class="info_box">Information will go in this div which should slide in and out.</div>
</div>
+1 pour une question bien formatée. – Matt