【发布时间】:2014-04-19 20:46:21
【问题描述】:
所以,我不想使用插件,而是只想制作一个基本的选框。很公平。很容易。工作得体。唯一让我烦恼的是动画开始有点慢然后加速的方式。无论如何可以从动画功能中获得稳定的速度吗?随着一开始的减速,它不是很流畅。
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
【问题讨论】:
标签: jquery html jquery-animate