2011-01-29 4 views
1
var oldHeight = $("#outerCart").height; 
     $('#outerCart').animate(
        { height: (oldHeight + 100) }, { 
         duration: 'slow', 
         easing: 'easeOutBounce' 
        }); 

지금이 코드는 작동하지 않습니다. (범인은 새로운 높이에 oldHeight를 넣고 있습니다.) 이런 식으로 상수를 입력하면JQuery에서 요소의 높이를 얻고 애니메이션에서 사용하는 방법

var oldHeight = $("#outerCart").height; 
     $('#outerCart').animate(
        { height: 200 }, { 
         duration: 'slow', 
         easing: 'easeOutBounce' 
        }); 

어떻게 동적으로 만들 수 있습니까? 미리 감사드립니다.

+0

내가 궁금합니다. 그런 식으로 문자열과 정수가 아닌 정수를 추가하는 것을 확인하면 실패합니다! – jnkrois

+0

나는 그것을 시도했지만 작동하지 않았다. 고마워요. –

답변

1

대신 "+=100"을 사용해도됩니다. animate()(docs) 방법 용 문서에서

$('#outerCart').animate(
{ height: '+=100' }, { 
    duration: 'slow', 
    easing: 'easeOutBounce' 
}); 

:

애니메이션 특성은 상대적 일 수있다. 값에 선행 + = 또는 - = 문자 시퀀스가 ​​제공되면 대상 값은 속성의 현재 값에서 주어진 숫자를 더하거나 뺀 값으로 계산됩니다.

코드가 작동하지 않는 이유는 호출하지 않고 함수를 참조했기 때문입니다.

$("#outerCart").height; 

이 있었어야 : 차이를 만들 것으로 parseInt와 "oldHeight"를 포장하는 경우

$("#outerCart").height(); 
+2

매력처럼 작동했습니다. 고마워요 –

+1

@ 코린 : 천만에. – user113716

관련 문제