jQuery和滚动动画冲突

时间:2013-11-29 16:03:46

标签: javascript jquery css

当我只滚动一点点时,我的功能100%工作,但当我向下滚动所有页面并快速向上滚动时,我的不透明度:0需要更长时间或根本不起作用。知道为什么吗?这是因为我多次打电话给我的功能?

$(window).scroll(function () {
    var TopValue = $(window).scrollTop();
    if (TopValue <= 50) {
        $("div.mouseover > p").css('opacity', 0);
    } else {
        $("div.mouseover > p").animate({
            opacity: '1.0'
        }, 1000);
    }
});

1 个答案:

答案 0 :(得分:1)

由于您的function来电多次发生,因此您必须在开始另一个animation queue之前清除animation,请阅读.stop()以获取进一步说明。

试试这个,

$(window).scroll(function () {
    var TopValue = $(window).scrollTop();
    if (TopValue <= 50) {
        $("div.mouseover > p").css('opacity', 0);
    } else {
        $("div.mouseover > p").stop().animate({
            opacity: '1.0'
        }, 1000);
    }
});