将变量传递给.animate属性

时间:2012-06-29 16:02:48

标签: animation positioning var

这里有一个n00b。 我试图修改一个悬停功能,我发现了哪个位置和动画列表项中的图像。而不是给.animate({top:第一个实例中的精确像素值,我想传递变量imgHeight,它获取包含li的高度,但我显然做错了。任何指针?

var imgHeight = $('li').height();
$(function() {
$('ul.hover_block li').hover(function(){
$(this).find('img').animate({top:'imgHeight' + 'px'},{queue:false,duration:200});
}, function(){
$(this).find('img').animate({top:'0px'},{queue:false,duration:200});
});
});​

1 个答案:

答案 0 :(得分:0)

试试这个:你有

{top: 'imgHeight' + 'px'}

应该是

{top: imgHeight + 'px'}

完整代码:

var imgHeight = $('li').height();
$(function() {
        $('ul.hover_block li').hover(function(){
            $(this).find('img').animate({top:imgHeight + 'px'},{queue:false,duration:200});
        }, function(){
            $(this).find('img').animate({top:'0px'},{queue:false,duration:200});
      });
});​