繁体   English   中英

如何滚动到元素并在到达视口顶部时停止?

[英]How to scroll to element and stop when reaches the top of viewport?

我正在一个网站( http://dev-caeoli.pantheonsite.io/ )上工作,但遇到了jquery问题。 我在网站的导航中使用scrollTop。 我无法使用锚链接,因为“ main”元素的开头位置已固定,无法创建滚动效果。

我正在使用此代码,但是发生滚动时,该元素将保持在视口下方。

scrollTop: $("#work").offset().top

我想要的是滚动到视口顶部的元素。 我使用了代码打击来实现这一点,但是它仅在您位于页面顶部时才起作用,因为它会减去窗口的高度。

scrollTop: $("#hero").offset().top-100 + window.innerHeight

我做错了什么线索吗?

您应该将当前滚动量添加到元素的offset()。to并分散固定的标题高度

scrollTop: $(window).scrollTop() + $("#work").offset().top - 100

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM