J'ai cette ligne de JavaScript et le comportement que je vois est que le selectedLi
disparaît instantanément sans "glisser vers le haut". Ce n'est pas le comportement auquel je m'attendais.
Que dois-je faire pour que les selectedLi
diapositives se déplacent avant qu'elles ne soient supprimées?
selectedLi.slideUp("normal").remove();
javascript
jquery
animation
Eric Schoonover
la source
la source
Vous devez être plus explicite: plutôt que de dire "ceci" (ce qui, je suis d'accord, devrait fonctionner), vous devriez faire ceci:
la source
$("#yourdiv")
au lieu de$(this)
est complètement redondant et ce n'est pas pourquoi ce code résout le problème d'OP. Ce code résout le problème car il utilise lecomplete
rappel.Le moyen le plus simple est d'appeler la fonction "remove ()" dans slideUp en tant que paramètre comme d'autres l'ont dit, comme dans cet exemple:
Il est indispensable de l'appeler dans la fonction anonyme () pour empêcher que remove () ne soit exécuté avant la fin du slideUp. Une autre manière égale est d'utiliser la fonction jQuery "promise ()". Mieux pour ceux qui aiment le code explicite, comme moi;)
la source
En utilisant les promesses, vous pouvez également attendre que plusieurs animations soient terminées, par exemple:
la source
la source