我遇到了jquery动画的问题。我的代码如下:
if((valorscrollpx >= 800) && (valorscrollpx <= 1700))
{
$('#loquehacebien').fadeIn(600);
$('#loquehacebien_estrella').animate({left: '-=500', top: '+=80'}, 1800);
}
else
{
$('#loquehacebien').fadeOut(600);
}
问题是我不知道如何停止这个动画! 当滚动到达800 px时,动画开始和结束,但每次我移动时,滚动动画都会从它的位置再次开始。 我能做什么?。我只需要动画开始和结束一次。
谢谢!
答案 0 :(得分:0)
如果你只需要为星星设置一次动画,你可以使用这样的标志:
把
var flag = false;
在$(window).scroll(...);
之外
并用
替换您的代码if((valorscrollpx >= 800) && (valorscrollpx <= 1700) && !flag) {
$('#loquehacebien').fadeIn(600);
$('#loquehacebien_estrella').animate({left: '-=500', top: '+=80'}, 1800);
flag = true;
} else {
$('#loquehacebien').fadeOut(600);
}