2013-02-26 3 views
2

mouseenter 및 mouseleave를 사용하여 애니메이션을 만들고 있는데, 문제는 마우스를 div에 빠르게 놓고 지나치면 애니메이션이 미쳐 가고 중단없이 반복하는 것과 같은 것입니다. 그걸 고치는거야, 어떤 종류의 멈춤이나 뭐? 그렇지 않으면 쌓아 이상 불 이상 할 수mouseenter 및 mouseleave 중지 애니메이션

/* Footer Hover */ 
    function footerhover(){ 
     var footer = $('#footer') 
     footer.bind({ 
      'mouseenter' : function(){ 
       footer_animate(200); 
       footer_bottom(145); 
      }, 
      'mouseleave' : function(){ 
       footer_bottom(0); 
       footer_animate(40); 
      } 
     }) 
    } 
    function footer_animate(h){ 
     $('#footer').animate({ 
      height: h 
     }, 50); 
    } 
    function footer_bottom(b){ 
     $('#footer').animate({ 
      bottom: b 
     }, 300); 
    } 

답변

1

그것은 새로운 일을 시작하기 전에 현재 애니메이션을 중지 jQuery의 정지 기능을 사용하는 것이 좋습니다이야 :

이 내 코드입니다. 따라서 바닥 글을 움직일 때마다 먼저 중지하십시오.

$('#footer').stop().animate({}); 
+1

aplying. 두 애니메이션에 모두 멈춤으로써 처음부터 멈추게합니다 ... 전혀 작동하지 않습니다. –

관련 문제