动画一个框以满足计算的宽度

时间:2011-02-03 12:34:07

标签: jquery animation width

我会说实话,我已经将来自几个来源的代码拼凑起来而不知道它是如何工作的,而且我已经把自己弄糊涂了。

我在div(.projectImages)中有一系列图像,我想计算它们的组合宽度,然后将该值传递给动画,以便它将图像移动到组合宽度。

这是我的frankenstein代码:

function calcWidth() {
    var imgwidth = 0;
    $(".projectImages").find("img").each(function(){
        imgwidth += $(this).width();
    });
    return imgwidth;
}


$(function(){   
    $("#rightArrow").hover(function() {
        $('.projectImages').animate({left: imgwidth +'px'}, 3000);
    },function() {
        $('.projectImages').stop();
    });
});

我很确定问题在于计算宽度,但正如我所说,这段代码是一个复制和粘贴工作,所以我不确定它是如何工作的。

jQuery相当新,但我慢慢地到了那里。

2 个答案:

答案 0 :(得分:1)

看起来并没有错(逻辑上)。语法略有不同,您在imgWidth(文档就绪)方法中使用$()。但它应该抛出一个参考错误。

您应该将imgWidth替换为calcWidth(),并且没问题。

答案 1 :(得分:0)

$('。projectImages')。animate({left:calcWidth()+'px'},3000);

注意图像是否有边距/填充,也应包含在计算中