如果页面已在目标位置,则停止动画

Stop animation if page is already at destination

本文关键字:动画 位置 目标 如果      更新时间:2023-10-06

我目前正在使用一点javascript将用户向下移动到他们在侧导航菜单中单击的信息的位置。然而,问题是,如果他们在滚动时单击一个项目,然后单击另一个项目时,动画仍在尝试完成。如果js已经在滚动顶部目的地的顶部,有没有办法阻止它运行。我已经有了一个.stop(),可以在单击时停止原始动画。或者可能取消滚动时的动画?

$('#zoomTo li a').on('click', function(e) {
    $('html, body').stop().animate({
        scrollTop : $('#scrollDest').offset().top - 20
    }, 1000);
    e.preventDefault();
});

从jquery站点使用:

.clearQueue().finish();

http://api.jquery.com/finish/