Javascript jquery是否会在已向下滑动的元素上触发向下滑动动画?

Javascript jquery是否会在已向下滑动的元素上触发向下滑动动画?,javascript,jquery,Javascript,Jquery,我希望这个问题是不言自明的。我有以下代码: $(window).scroll(function () { var scrollTop = $(window).scrollTop(); if (scrollTop > sliderTop) { $('#slider').slideDown(1000); } else { $('#slider').slideUp(1000); } }); 如果在某一点后向下滚动,则会连续调用sl

我希望这个问题是不言自明的。我有以下代码:

$(window).scroll(function () {
    var scrollTop = $(window).scrollTop();
    if (scrollTop > sliderTop) {
        $('#slider').slideDown(1000);
    } else {
        $('#slider').slideUp(1000);
    }
});

如果在某一点后向下滚动,则会连续调用slideDown函数。JQuery是一次又一次地为它设置动画,还是足够聪明地知道元素已经向下滑动了?(目前我正在使用一个标志来检查它是否已经向下滑动)。

动画将不再运行。请参见中的
effect.js
中的第459-468行

但我仍然建议不要使用它来提高代码的可读性。只需使用布尔值,它不会伤害

doAnimation = function() {
            // Operate on a copy of prop so per-property easing won't be lost
            var anim = Animation( this, jQuery.extend( {}, prop ), optall );

            // Empty animations, or finishing resolves immediately
            if ( empty || data_priv.get( this, "finish" ) ) {
                anim.stop( true ); // ** here - stopping right after started.
            }
        };
        doAnimation.finish = doAnimation;