线性动画到可变宽度

时间:2011-12-05 19:45:00

标签: jquery width jquery-animate

我有一个列表(<ul>标签),其子元素(<li>标签)具有可变宽度,并且向左浮动....

我想将marginLeft设为特定点

动画想要有任何宽度的恒定速度..

首先,我使用以下代码

来捕获ul的长度
ul_length=parseFloat($("#developments ul").css("width"))+
          parseFloat($("#developments ul").css("paddingLeft"))+
          parseFloat($("#developments ul").css("paddingRight"));

现在我如何修改上面的代码以获得任何宽度的constant_speed?

$scrollhandler=$("#developments ul").animate({
        marginLeft: -1*(ul_width+li_padding)
        }, {
        duration: ul_length,
        easing: "linear"
    });

1 个答案:

答案 0 :(得分:1)

为了获得恒定的速度,你想要计算你要覆盖的距离,然后计算它(和给定的速度),计算达到该速度所需的时间。

例如,如果你想要10px / sec的速度,并且你有50px覆盖(计算),你需要给动画一个5秒的长度。