将动态CSS传递给jQuery.animate

时间:2010-04-07 15:44:35

标签: jquery animation

jQuery.animate的文档声明

  

唯一需要的参数是地图   CSS属性。这张地图很相似   到可以发送到的那个   .css()方法,除了范围   属性更具限制性。

那么,为什么这样做

$('#con div').css( {
        top : function(i) {
            console.log(i);
            return (i * 500) + 'px';
        }
    }
);

这不是吗?

$('#con div').animate( {
        top : function(i) {
            console.log(i);
            return (i * 500) + 'px';
        }
    }
);

控制台显示正在为css评估函数,但不会为动画评估。我错过了什么吗?

顺便说一下,我正在使用1.4.2。

1 个答案:

答案 0 :(得分:2)

这可能不是你想要的,但一个简单的解决方案就是迭代元素并单独应用动画:

$('#con div').each(function(i)
{
    $(this).animate({ top: i * 500 });
});

毕竟,这基本上就是你的代码片段。