Javascript 更改内部链接向下滚动页面的距离

Javascript 更改内部链接向下滚动页面的距离,javascript,jquery,css,html,Javascript,Jquery,Css,Html,嗨,我有一个导航菜单,一旦向下滚动页面一定数量的像素,它就会变成固定的。 因为菜单是固定的,所以它覆盖了顶部,并切掉了该部分的标题 当使用菜单移动到页面上的某个部分时,我希望影响页面移动的距离,因此,如果可能的话,会对页面向下滚动显示所有菜单以及部分标题的距离产生负面影响 谢谢 我遇到了这个问题,并提出了以下解决方案: <nav class="fixed"> <a href="#about">About</a> ... </nav> ..

嗨,我有一个导航菜单,一旦向下滚动页面一定数量的像素,它就会变成固定的。 因为菜单是固定的,所以它覆盖了顶部,并切掉了该部分的标题

当使用菜单移动到页面上的某个部分时,我希望影响页面移动的距离,因此,如果可能的话,会对页面向下滚动显示所有菜单以及部分标题的距离产生负面影响


谢谢

我遇到了这个问题,并提出了以下解决方案:

<nav class="fixed">
  <a href="#about">About</a>
  ...
</nav>

...

<div id="about" class="anchor-helper"></div>
<div class="container-i-actually-want-to-see>
  <!-- your content goes here -->
</div>

我喜欢这个解决方案的地方在于,它尽可能依赖CSS,并且只使用javascript进行平滑滚动。如果有人导航到
http://your-site.com/example-page#about
,它们将到达您想要的位置。

我认为这通常是在js文件中的滚动函数上触发的。你可以搜索,或者在你的网站上发布一个链接,有人可以看一下。
nav {
  height: 50px;
}

.anchor-helper {
  position: relative;
  top: -50px; /* however tall your nav is, you want this to be negative that amount */
}