JS小提琴: http://jsfiddle.net/Kpj3b/19/
它开始没事,但很快变得不稳定和暴力。我只是想从A点到B点制作一个漂亮的平滑sin波。
我的Mathmatics中的任何建议?
$("#ball").stop().animate({'border-spacing': 400 },{
step: function(p, fx) {
s = Math.sin(p);
y = s * 50 + 150;
console.log(s);
var move = {top: y + "px", left: p + "px"};
$(fx.elem).css(move);
}, duration: 10000, complete: function () { $("#ball").remove(); }
});
PS:我不想使用jquery.path.js。
答案 0 :(得分:2)
如果您未指定easing
,则默认为'swing'
,这就是为什么它看起来越来越“暴力”。您可以指定'linear'
进行缓动以获得更多您想要的效果。我还更新了border-spacing
属性更改的金额,因为当它太高时,补间对于眼睛来说有点太分开了: