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;