Toggle ne se lance au simple click que la première fois
Bonjour,
J'essaie, pour m'exercer (rien d'autre ^^'), de reproduire peu à peu quelques fonctionnalités de Twitter. Voici le lien :
http://www.spharian.be/lab/minichat/
Quand on clique sur la croix, ma div s'agrandit (slideDown) pour laisser appraitre le lien de suppression et la croix devient bleue. Une fois qu'une autre croix est cliquée, le précédent se ferme et le cliqué s'ouvre, etc... tout marche niquel quand je clique sur une croix pour la 1ère fois. Cependant, si je re-clique sur une croix (que j'ai déjà cliqué, donc), il faut 2 clics pour que cela fonctionne. Je ne parviens par à trouver le problème :(
Voici le bout de code qui permet de gérer ça:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| var msgFooter = $(".msg-footer"),
msg = $(".msg"),
deleteBtn = $(".delete-button"),
originalColor = "#3a3a3a",
slideSpeed = 100;
deleteBtn.toggle(function() {
deleteBtn.css("color", originalColor); //set every deleteBtn to their original color
$(this).css("color", "#0881bf"); //on first click, set blue color to the click deleteBtn
msg.find(msgFooter).slideUp(slideSpeed);
$(this).parent().find(msgFooter).slideDown(slideSpeed);
}, function() {
$(this).css("color", originalColor); //on second click, set the original color to deleteBtn
msg.find(msgFooter).slideUp(slideSpeed);
}); |
J'espère que vous saurez m'aider :ccool:
Merci d'avance :-)