2010-09-19 7 views
0

J'ai eu un problème en créant un curseur jQuery, j'ai une liste de liens qui révèlent les informations correspondantes. Les différents liens ont un contenu différent, donc ont des hauteurs différentes.jQuery slideUp/slideDown problème

Cela fonctionne mais le problème que j'ai est quand nouveau contenu d'une hauteur différente est ajouté, slideDown() glisse à la hauteur du contenu précédent (bien que le nouveau contenu est là!) puis revient à la bonne hauteur? Aussi, quand cela arrive, mon bouton «fermer» ne fonctionne plus.

$('#timelineDataContainer').slideUp(400,function(){ 
    $('#timelineData').queue(function(){ 
     $(this).html('') 
     .append('Some new content here....') 
     .dequeue(); 
    }); 
    }); 
$('#timelineDataContainer').slideDown(); 

Voici un exemple de travail de jFiddle

http://jsfiddle.net/Xu6B4/9/

Toute aide serait appréciée!

+0

aussi, bizarrement, si vous appuyez sur « fermer » après l'ouverture d'un événement, cela fonctionne comme il se doit. – greenimpala

Répondre

1

Vous appelez le SlideDown() sans attendre que SlideUp() se termine.

Cela devrait fonctionner comme prévu: http://jsfiddle.net/Xu6B4/12/

+1

c'est vrai, mettez le SlideDown dans le rappel de la diapositive. –

+0

Très bien, merci! – greenimpala