如何使链式jquery动画在彼此之间流动?

时间:2010-08-18 19:41:17

标签: jquery background-position

查看此网站:

http://photoshop.tutorialcraft.com/

注意太阳会到达顶部,然后再向右移动。这是我的代码:

var windowWidth = $(window).width();

var width50 = (windowWidth*0.50)-220; //220 is half the width of the BG image being animated.
var width100 = (windowWidth*1);


$("#sunnmooncycle").css("backgroundPosition", "-440px 100px");.delay(2000) 

            .animate({'backgroundPosition':'('+ width50+'px '+'-400px' + ')'}, {duration:1500})
            .animate({'backgroundPosition':'('+ width100+'px '+'100px' + ')'}, {duration:1500});

如果它可以采用更加拱形的模式,而不是两个直接的动画,那将是很好的。如果我在两者之间创建2个“关键帧”,那么在拱的位置会出现波动,因为Jquery可以简化动画,而不仅仅是从一个流动到另一个。

我对数学的理解不足以弄明白我是怎么做的,但由于窗口的宽度是在执行之前计算出来的,我相信有人可能知道如何做到这一点。

那么如何让它在拱形而不是点对点动画?

1 个答案:

答案 0 :(得分:0)

查看jQuery animate的文档。您可以使用值linear作为调用的第三个参数来指定要关闭的缓动。

您可以根据需要设置任意数量的关键帧。