使用jQuery计算绝对定位容器中的偏移量

使用jQuery计算绝对定位容器中的偏移量,jquery,scroll,offset,Jquery,Scroll,Offset,我所有的内容都在一个绝对容器中,#content,它的宽度和高度都是100%。因此,当滚动时,我们滚动的是容器,而不是主体 我试图计算页面中一系列部分的偏移量,如下所示: $('.advance').on("click", function(){ var nextSection = $(this).parent('.section').next('.section'); var nextDistanceTop = nextSection.offset().top - 25;

我所有的内容都在一个绝对容器中,
#content
,它的宽度和高度都是100%。因此,当滚动时,我们滚动的是容器,而不是主体

我试图计算页面中一系列部分的偏移量,如下所示:

$('.advance').on("click", function(){
     var nextSection = $(this).parent('.section').next('.section');

     var nextDistanceTop = nextSection.offset().top - 25;

     $("#content").animate({ scrollTop: nextDistanceTop });
});
因为容器是绝对定位的,所以offset().top提供了与视口顶部的偏移量。我需要计算相对于屏幕/标题顶部或滚动位置的偏移量。还有其他的解决办法吗

下面是一个示例:

使用自己的jQuery方法:


在上创建一个演示怎么样?好的,我将把它放在一起这里是:$(“body”).scrollTop()工作吗?我认为您需要将其添加到绝对定位元素的偏移()中。top要了解元素看起来向下有多远,这将不会计算从顶部偏移的截面,您能用小提琴偶然展示您的想法吗?
$('.advance').on("click", function(){
   var nextSection = $(this).parent().next();
   var nextDistanceTop = nextSection.offset().top + $("#content").scrollTop();
   $("#content").animate({ scrollTop: nextDistanceTop });
});