2011-08-31 3 views
0

animate()에 대한 동적 요소 높이를 어떻게 얻을 수 있습니까?jquery animate : 애니메이션의 요소 높이를 어떻게 동적으로 얻을 수 있습니까?

이것은 요소에 더 많은 숨겨진 텍스트를 표시하는 코드입니다. 문제는 고정 된 숫자로 애니메이션 높이 (예 : 300px)를 고쳐야하고 텍스트가 계속 변경되어 얼마나 오랫동안 머물러 있는지 알 수 없기 때문입니다.

$('.toggle-slide').click(function() { 

     var object = $(this); 
     var object_target = $('.text-about'); 
     var target_height = object_target.height(); 

    object_target.animate({ 
     height:'300px' 
     }, 1500); 


     return false; 
}); 

그래서이 요소의 실제 높이를 동적으로 획득되어야 그때 animate()에이 매개 변수를 통과 할 수 있다고 생각.

하지만 어떻게 동적 높이를 얻을 수 있습니까?

아니면 다른 좋은 아이디어가 있습니까?

여기 내 테스트 link입니다.

+0

호출시 요소가 숨겨져 있지 않으면 [. height]()를 사용하여 jQuery에서 요소의 높이를 가져옵니다. 그럼 너는 그것에 대해 비웃을 필요가있다. 높이를 얻으려고 할 때 동적 요소가 숨겨져 있습니까? – Chad

+0

예. 여기에서 볼 수 있듯이 처음부터 숨겨져 있습니다. - http://jsfiddle.net/unLBu/2/ – laukok

답변

1
$('.toggle-slide').click(function() { 

     var object = $(this); 
     var object_target = $('.text-about'); 
     var target_height = object_target.height('100%').height(); 

     object_target.height('200px'); 

     object_target.animate({ 
     height: target_height + 'px' 
     }, 1500); 


     return false; 
}); 

내가 먼저, 다음 높이를 가지고, 모든 눈에 보이는 만들기 200 픽셀로 다시 넣고 :

어쩌면

느린 컴퓨터에서 깜박임 그러나 그 아이디어를 애니메이션으로 작동하는 그것을 가지고

+0

감사합니다. :-) – laukok

관련 문제