2014-04-22 3 views
0

제대로 작동하려면이 코드를 만들려고했습니다. 숨겨진 div (hidden-bio)가 있는데 클릭하면 애니메이션이됩니다. 이제 너무 닫고 싶지만 "display : none"부분이 애니메이션 전에 트리거되므로 애니메이션을 마친 후에 어떻게해야하는지 궁금합니다.jquery 애니메이션 후 CSS 변경

$(document).ready(function() { 
    $('.bio-button').click(function() {   
    $('.hidden-bio').animate({ 
     top: '0px', 
     opacity: '1', 
     left: '0' 
    }, 500, 'easeOutCirc'); 
    $('.hidden-bio').css({ 
     display: 'block' 
    }); 
});        
}); 

$(document).ready(function() { 
    $('.close').click(function() {   
    $('.hidden-bio').animate({ 
     top: '300px', 
     opacity: '0', 
    }, 500, 'easeOutCirc'); 
    $('.hidden-bio').css({ 
     display: 'none' 
    }); 
});        
}); 
+0

뿐만 아니라 당신의 HTML 및 CSS를 붙여 넣기하거나 바이올린. – 4dgaurav

+0

dbucki 님의 답변입니다. 콜백 함수라고합니다. –

답변

3

를 사용하여 애니메이션의 콜백 함수 -

$(document).ready(function() { 
    $('.bio-button').click(function() {   
    $('.hidden-bio').animate({ 
     top: '0px', 
     opacity: '1', 
     left: '0' 
    }, 500, 'easeOutCirc', function(){ 
     $('.hidden-bio').css({ 
      display: 'block' 
     }); 
    }); 
});        
}); 



$(document).ready(function() { 
    $('.close').click(function() {   
    $('.hidden-bio').animate({ 
     top: '300px', 
     opacity: '0', 
    }, 500, 'easeOutCirc', function(){ 
     $('.hidden-bio').css({ 
      display: 'none' 
     }); 
    }); 

});        
}); 
+0

아마도 콜백에서'display : 'block'을 꺼내야한다고 생각합니다. 그렇지 않으면 애니메이션 중에는 아무 것도 표시되지 않습니다. –

+0

네, 완벽하게 작동합니다. 코드의 두 번째 부분을 변경했습니다. 실제로 첫 번째 부분의 콜백은 애니메이션을 표시하지 않습니다. 감사합니다! – mannygtr

+0

http://jsfiddle.net/eew5R/ vs http://jsfiddle.net/eew5R/1/ –