Partage
  • Partager sur Facebook
  • Partager sur Twitter

Stoper une animation Jquery

    30 novembre 2011 à 0:28:56

    Bonjour,

    J'anime des éléments sur mon site à l'aide du Jquery au passage de la souris. J'ai par exemple mis en place de façon animée l'apparition d'éléments à l'aide d'un onmouseover et la disparition de cet élément à l'aide d'un onmouseout.
    Le problème, c'est qu'en passant très rapidement la souris sur mon élément de façon répétée, l'animation se lance plusieurs fois. Je vous laisse voir se que ça donne ici : www.sephition.com/

    Faites le test sur les 3 pavés web-design, print et profil, en passant genre 5 fois la souris sur un pavé en 1 seconde, l'animation est faite 5 fois à la suite.

    Comment je peux faire pour que l'animation lancée avec mon onmouseover ne se lance que si l'animation précédente s'est déroulée complètement ?

    Merci d'avance.
    • Partager sur Facebook
    • Partager sur Twitter
      30 novembre 2011 à 0:32:14

      function taFonctionQuiAnime() {
      if (!enCoursDAnimation) {
        $(...).animate(..., { complete : function() { enCoursDAnimation = false; } );
        enCoursDAnimation = true;
       }
      }
      

      • Partager sur Facebook
      • Partager sur Twitter
        30 novembre 2011 à 1:34:24

        Sinon tu peux aussi utiliser unbind avant de faire un bind sur une action (click, hover...) exemple :

        $('#element').unbind('click').bind('click', function...
        
        • Partager sur Facebook
        • Partager sur Twitter
          30 novembre 2011 à 2:41:49

          Tu peux également regarder du côté de stop() :
          $(this).stop(false,true).tonAnimation();
          
          • Partager sur Facebook
          • Partager sur Twitter

          Stoper une animation Jquery

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown