我正在努力实现以下目标:
我有一个 div,当它几乎位于页面顶部时,我想自动滚动到该 div 的顶部。
这是我到目前为止的脚本。如您所见(我希望)。当#plus 距离页面顶部 250 到 20 px 时,我想运行将 #editions 定位在页面顶部的动画。然而,动画被执行了很多次,并且一直在继续。我认为它会为 250 到 20 之间的每个值触发,所以基本上是 230 次。我不确定我是否以正确的方式解决这个问题。
// Scroll to Editions //
function scrollEditions(){
$('html, body').animate({
scrollTop: $("#plus").offset().top
}, 1200, 'easeOutQuint').delay(200).animate({
scrollTop: $("#editions").offset().
}, 800, 'easeOutQuint');
};
// Scrolling check //
function showHideTitles(){
// Distance of elements frop top //
var Ptop2 = Math.round($('#plus').offset().top - $(window).scrollTop()); // PLUS from top
// Auto scrolling //
if (Ptop2 <= 240 && Ptop2 >= 20){
scrollEditions();
}
};
$(window).scroll(function(){
showHideTitles()
});