当我向下滚动到它的位置时,我试图制作一个框动画,但动画不会停止,元素只是不断重复动画。 代码即时使用:
jQuery(document).scroll(function (e) {
var value = jQuery(this).scrollTop();
if (value = 600) {
jQuery( "body" ).addClass( "scroll" );
jQuery('#car1').animate({top: '+=50px'}, 2000);
}
});
答案 0 :(得分:0)
单个=
不是比较运算符。事实上,它为您的变量赋值。
话虽如此,你的条件是:
if (value = 600)
始终为真,因为600
是真值。
尝试使用==
或===
。
要动画一次,您可以使用正在输入身体的课程。只需颠倒你的2行并做一个条件:
if(!jQuery("body").hasClass("scroll")) //Animate only if it haven't the class scroll
jQuery('#car1').animate({top: '+=50px'}, 2000);
jQuery( "body" ).addClass( "scroll" );