jQuery - Attendre jusqu'à la fin de slideUp ()
Question
Comment puis-je attendre la fin de la fonction jQuery slideUp () avant de poursuivre le script?
<script type="text/javascript">
$(document).ready(function() {
$("div[class=item]").click(function() {
var id = $(this).attr("id");
$("#content").slideUp();
switch(id) {
// Applications
case "rampro":
$("#content").css("text-align", "left");
$("#content").load("inc/pages/rampro.html");
$("#content").slideDown();
break
case "diskman":
$("#content").css("text-align", "left");
$("#content").load("inc/pages/diskman.html");
break
case "iconmap":
$("#content").css("text-align", "left");
$("#content").load("inc/pages/iconmap.html");
break
// Websites
case "benoks":
$("#content").css("text-align", "left");
$("#content").load("inc/pages/benoks.html");
break
case "linkbase":
$("#content").css("text-align", "left");
$("#content").load("inc/pages/linkbase.html");
break
case "jamesbrooks":
$("#content").css("text-align", "left");
$("#content").load("inc/pages/jamesbrooks.html");
break
default:
$("#content").css("text-align","center");
$("#content").html("<h1>something went wrong, try again!</h1>");
}
return false;
});
});
La solution
Utilisez le mécanisme de rappel et votre code exécuté dans le rappel.
$('#something').slideUp('fast', function() {
... stuff to do after the slide is complete...
});
Autres conseils
slideUp () prend deux arguments. Si vous passez une fonction comme second argument, il sera appelé lorsque l'animation est terminée.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow