向下滚动到 div + 一定的边距

Posted

技术标签:

【中文标题】向下滚动到 div + 一定的边距【英文标题】:Scroll down to div + a certain margin 【发布时间】:2014-06-21 17:46:26 【问题描述】:

我正在使用此脚本滚动到我页面上的某个 .div:

$(".button").click(function() 
    $('html, body').animate(
        scrollTop: $(".scrolltothis").offset().top
    , 500);
);

完美运行。这会将页面滚动到“scrolltothis”div 的顶部。现在问题来了: 我有一个菜单栏,它在页面顶部有一个固定位置。这是一种在向下滚动时会停留在页面顶部的菜单栏。

所以当脚本向下滚动到“scrolltothis”div 时,div 的一部分会落在菜单栏的后面。

我需要一种方法来告诉浏览器向下滚动到“scrolltothis div”+向下 50 像素,以便该 div 在菜单栏下完全可见。

希望大家能帮帮我!

【问题讨论】:

相信你要负50 没错。谢谢。 【参考方案1】:

设置时只需将 50 像素添加到 scrollTop。试试这个:

$(".button").click(function() 
 $('html, body').animate(
    scrollTop: $(".scrolltothis").offset().top + 50;
 , 500);
);

【讨论】:

非常感谢!!这正是我所需要的。

以上是关于向下滚动到 div + 一定的边距的主要内容,如果未能解决你的问题,请参考以下文章

到达页面底部后更改固定定位元素的边距顶部位置?

带有滚动条的 QGraphicsView 内不需要的边距

新内容不继承父 div 的无限滚动样式

绝对定位 div 的边距底部在 Chrome 中工作,但在 Safari 或 Firefox 中不可用

您如何使用 jQuery 测量用户向下滚动的距离?

子元素的边距[重复]