2012-11-08 3 views
2

나는 두 개의 div가 있습니다 div1과 DIV2 내가 div1이 그 위에 내려, 투명성과 그것의 끝에서 DIV2 슬라이드를 애니메이션 곳 효과를 달성하기 위해 노력하고jQuery를 함께

(교체 div1).

div1.animate({ 
    opacity: 0.0 
}, 2000, function() { 
    $(this).replaceWith(div2.hide().slideDown(2000, 'linear', function() {})); 
}); 

그러나 div1의 애니메이션의 끝에서, DIV2 그렇게 우아하게 아래로 슬라이딩되지 않은 : 여기

내가 (http://jsfiddle.net/RHSgf/4/)를 시도하는 것이다.

필자는 슬라이딩 다운이 너무 왜곡 된 이유를 알지 못합니다. 이 작업을 수행하는 올바른 방법을 찾는 데 도움을 주셔서 감사합니다.

답변

4
replaceWith

이동 slideDown를하고 작동합니다 :

$(this).replaceWith(div2.hide()); 
div2.slideDown(2000, 'linear'); 

http://jsfiddle.net/elclanrs/RHSgf/5/

+0

감사합니다. 하지만 누군가 내 잘못 된 코드와 비교하여 왜 이것이 작동하는지 설명해 주실 수 있습니까? – bits

+0

TBH를 모르겠다. 방금 경험 한 바 때문에 다른 방법으로는 수행 할 수 없다는 것을 알고있다. – elclanrs

3

이 시도하고 귀하의 요구 사항에 따라 타이밍을 조정!

<script type="text/javascript"> 
$(document).ready(function() 

         { 
         $("#div2").fadeOut(2000); 
         setTimeout(function() { $("#div1").slideDown(2000); }, 2000); 
         } 
       ); 

</script> 
관련 문제