如何在jQuery中获取元素的高度并在动画中使用它

问题描述:

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

我不知道你的包裹 “oldHeight” 与parseInt函数会有所作为。这样你就可以确保你添加了整数而不是字符串加上一个整数,这将会失败! – jnkrois 2011-01-29 03:25:10

+0

我试过了,但没有奏效。感谢 – 2011-01-29 03:31:32

你可以做"+=100"代替。

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

从文档的animate()(docs)方法:

动画属性也可以是相对的。如果一个值与领先+ =或供给 - =字符序列,则目标值通过加上或减去从属性的当前值的给定数量的计算。

你的代码没有工作的原因是你没有调用它的引用函数。

$("#outerCart").height; 

应该是:

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