jquery div元素在滚动动作上重复动画

时间:2012-11-23 16:10:47

标签: jquery scroll jquery-animate fadein repeat

我有这个功能:

$(window).scroll(function(){
    if ($(this).scrollTop() > 100) {
        $('.scrollup').fadeIn('slow', function() {
            $('.cartinfo').animate({'right': '+=46px'}, 'slow');
        });
    } else {
        $('.scrollup').fadeOut('slow', function() {
            $('.cartinfo').animate({'right': '-=46px'}, 'slow');
        });
    }
});

如果滚动淡入淡出,则该类的div应该释放+ 46px,淡出时为-46。

但它会在每次滚动动作时触发动画。

你有解决方案吗?

谢谢

1 个答案:

答案 0 :(得分:1)

现在,您已将fadeanimate个调用绑定到每个滚动操作。你需要弄清楚你想要什么时候发射它们,因为每个滚动动作显然都不是正确的时间。

一种解决方案是,您可以使用this类似问题作为指南,在发布新动画之前检查元素当前是否正在设置动画。