如何通过单击jquery
为屏幕设置动画答案 0 :(得分:1)
我假设您想要将屏幕上的DIV从一个位置移动到另一个位置。这样做的方法是链接几个animate()调用,在前一个移动完成时将它从一个位置移动到另一个位置。也许将中间位置(如果有的话)存储在一个数组中,并弹出每个动画调用的下一个位置,直到所有调用完成。使用递归回调函数可能是处理此问题的最佳方法。
我会假设DIV已经绝对定位。如果没有,您可能需要查看makeAbsolute插件。
<强>未测试强>
var positions = [ [ x1, y1 ], [ x2, y2 ], .. ];
play( $('#myDiv'), positions );
function play( elem, positions ) {
if (positions.length > 0) {
var position = positions.shift();
elem.animate( { left: position[0], top: position[1] } }, function() {
play( elem, positions );
});
}
}
答案 1 :(得分:1)
$("#myDiv").click(
function(event){
$(this).animate({"left:0"},1500,'linear' // the fourth parameter is a callback function which runs when the animation completes
function(){ $(this).animate(...);
}
);
正如tvanfosson所说,它只是对动画函数的一系列调用 - 上面的代码并不完全适合你所谈论的内容,但它足够清楚地说明了这个例子(我认为)