scrollTop无法使用.animate正常工作



我有一个包含溢出文本的div,我想点击相应的按钮滚动浏览它。它被设置为在任意方向上滚动100个像素。当我使用这个函数时,它工作得很好——不使用jQuery.animation.

$(function() {
   $( "#upBtn" ).click(function(){
    $('#scroll').scrollTop($('#scroll').scrollTop()-100);
}); 
 $( "#downBtn" ).click(function(){
    $('#scroll').scrollTop($('#scroll').scrollTop()+100);
});

但一旦我添加.animate,我只能在任一方向上单击该按钮一次。它不会让我向下滚动超过前100个像素。

 $("#scroll").animate({ scrollTop: "100px" });

有什么建议吗?我组装了一支代码笔。

是的,这是正确的行为!

为什么?

因为它已经是100px了,所以它不会再滚动了。

应该做什么:

你可以获得当前滚动顶部的位置并添加100px。如下所示:

 $("#scroll").animate({ scrollTop:  $("#scroll").scrollTop() + 100 });

其他方面也是如此。

最新更新