无论如何要顺利开始动画?

时间:2014-04-19 20:46:21

标签: jquery html jquery-animate

因此,我不想使用插件,而是想制作一个基本的选框。很公平。很容易。工作得体。唯一让我烦恼的是动画开始慢一点然后加速的方式。反正有没有从动画功能中获得稳定的速度?随着开始时的减速,它不是很流畅。

var marquee = $('#marquee'),
    marqueeText = marquee.find('span:first'),
    marqPos = marquee.position(),
    marqTextPos = marqueeText.position(),

    runMarquee = setTimeout(startMarquee, 1000);

function startMarquee() {
    marqueeText.css('left', (marqPos.left - marqueeText.width() - 8)).animate({
        'left': (marqPos.left + marquee.width() + marqueeText.width() + 8)
    }, {
        duration: 5000,
        complete: function () {
            startMarquee();
        }
    });
}

更新

正如 adeneo 所指出的那样,将easing添加到我的动画中,使用设置linear进行线性移动可以解决问题。我也不需要超时,因为它已经是一个循环。看到更新的小提琴。

JSFiddle Demo

1 个答案:

答案 0 :(得分:2)

添加线性缓动(默认为swing

easing: 'linear'

FIDDLE