使用 #anchors 移动滚动条并进行额外定位

发布于 2024-12-04 11:07:25 字数 209 浏览 0 评论 0原文

是否可以更改滚动条相对于新哈希标签的位置? 目前,页面滚动到使用 #target 定位的元素的顶部,这是正常行为。有没有办法移动它,以便页面滚动到比锚标记更向下 100 像素(在锚标记之前添加额外的 100 像素)?

不确定是否应该使用锚点或 JavaScript 的巧妙放置。不确定我是否真的能够改变锚点的位置,所以我希望有一个 JavaScript 解决方案。

谢谢

Is it possible to change the position of the scroll bar relative to a new hash tag?
Currently, the page scrolls to the top of the element that is targeted using #target, which is normal behaviour. Is there a way to move it so the page scrolls to, for example, 100px further down the page than the anchor tag (adding an extra 100px before the anchor tag)?

Not sure whether cunning placement of the anchor or javascript should be used. Not sure I'm really able to change the position of the anchor so im hoping for a javascript solution.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

大姐,你呐 2024-12-11 11:07:25

您可以结合此问题的答案:On - window.location.hash - Change?

使用一些额外的逻辑:

$(function(){
  var win = $(window); //cache your jq objects!
  function fixScrollTop(){
    win.scrollTop(win.scrollTop() + 100);
  }
  if(window.location.hash !== ""){
    fixScrollTop();
  }
  win.bind('hashchange', fixScrollTop);
});

哦,如果您可以控制 URL 中的 #anchor,您可以(可能,取决于您要的浏览器兼容性)将其设置为具有 ID 的任何元素的 ID,以使浏览器滚动到它。

You could combine the answer to this question: On - window.location.hash - Change?

With some extra logic:

$(function(){
  var win = $(window); //cache your jq objects!
  function fixScrollTop(){
    win.scrollTop(win.scrollTop() + 100);
  }
  if(window.location.hash !== ""){
    fixScrollTop();
  }
  win.bind('hashchange', fixScrollTop);
});

Oh, if you have control over the #anchor in the URL, you can (probably, depending on the browser compatibility you're shooting for) set it to the ID of any element with an ID to make the browser scroll to it.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文