我的所有内容都在绝对容器#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给出了从视口顶部的偏移量。我需要计算相对于屏幕/标题顶部或滚动位置的偏移量。还有其他解决方法来实现这个目标吗?
以下是一个示例:http://jsfiddle.net/pkxDY/6/
答案 0 :(得分:2)
使用自己的jQuery scrollTop方法:
$('.advance').on("click", function(){
var nextSection = $(this).parent().next();
var nextDistanceTop = nextSection.offset().top + $("#content").scrollTop();
$("#content").animate({ scrollTop: nextDistanceTop });
});