jquery动画不同的img宽度

时间:2010-06-15 09:56:36

标签: jquery image width jquery-animate

我一直在寻找答案很长一段时间都没有用,所以是时候问了。 我尝试使用.animate()更改一次点击图像的大小。图像的第一个状态是缩略图大小,它会动画显示图像的原始大小,然后再缩放到缩略图。

编辑:图像默认加载宽度为150px。

问题是,并非所有图像都具有相同的“原始”尺寸,因此我需要一种方法来告诉一个通用功能切换到当前图像的原始尺寸。

这是我当前加载到$(window).load:

的代码
$('img[class=resize]').click(function (){
        if ($(this).width() != 150)
        {
            $(this).animate({width: '150px'}, 400);
        }
        else
        {
            $(this).animate({width: ''}, 400);
        }
    });

现在这显然不能按照我想要的方式工作,因为.animate()在我说width: ''时会想到我想要宽度= 0。任何建议我应该怎么做?< / p>

1 个答案:

答案 0 :(得分:0)

这是一个想法:当您将图像写入页面时,添加一个类或其他属性作为图像的原始宽度,然后当您将其设置为原始大小的动画时,请尝试$(this).animate({width: $(this).attr('original_size_attribute_of_your_choosing')}, 400);

tl,dr:将原始大小保存在每个图像的属性中。