JQuery Pause / Resume animate

Cela ne fonctionne pas pour moi …

$(document).ready(function(){ $('#h .a').animate({ top:'-=80px' },90,'linear'); $('#h .au,#h .di').animate({ left:'-=80px' },50000000,'linear'); $('#h .r').animate({ left:'-=80px' },250,'linear'); $("#h").animate('pause'); //pausing it at the start //resume pause switch $("#h").mouseover(function(){ $(this).animate('resume'); }).mouseout(function(){ $(this).animate('pause'); }); }); 

Consultez la démo ici: http://api.jquery.com/clearQueue/

On dirait exactement le genre de chose que vous essayez de faire.

Essayez celui-ci pour une pause et reprenez: jQuery Pause / Resume animation plugin

Aussi nous $(this).stop() peut faire une pause animée mais pas de chance de reprendre!

Autre erreur est celle-ci: top:'-=80px'

Essayez d'abord d'obtenir une position actuelle comme ceci, puis ajoutez-la:

 _top = $(this).offset().top; $('#h .a').animate({ top:_top-80 },90,'linear') 

Utilisez les fonctions queue () et dequeue () . Voici un exemple pris directement à partir de la documentation jQuery.

Vérifiez l'exemple de travail à http://jsfiddle.net/j4SNS/

Vérifiez le plugin: Fxqueues

https://github.com/lucianopanaro/jQuery-FxQueues

Il prend en charge la pause et le résumé (sans effacer la file d'attente) et ajoute l'idée de Scopes. Scopes sont parfaits pour chaîner des animations sur plusieurs objets.

Je n'ai pas trouvé une version de Fxqueus pour la version actuelle de Jquery, mais je l'ai utilisée avec succès avec les anciennes versions de Jquery.

Vous voudrez regarder l'utilisation de la fonction .stop() pour cela, car cela arrêtera les animations sur un élément jQuery.

http://api.jquery.com/stop/