0

有趣的“问题”。我们花了很多时间使我们的顶部栏在网站上保持不变。现在,每当在页面上单击锚点时,浏览器都会将我带到一个部分,但是因为有一个持久栏,所以该部分的开头隐藏在持久栏后面 :)

有没有什么聪明的主意可以通过 Jquery 或其他东西来跟踪它,而不是浏览器默认值,也许可以使用“动画”和“滚动顶部”使这种滚动锚定工作?- 然后将用户带到锚点偏移量上方约 30px 处,这样即使有持久栏,预期的目的地现在在持久栏下方可见?

当在页面中单击链接时,我可以控制这一点,但是如何控制用户何时通过锚点进入页面。谢谢!

4

2 回答 2

1

您可以使用 window.location.hash 隔离锚散列。根据 URL 的其余部分,您可能需要稍微调整一下 hashTag 值。然后,一旦你有了一个 jQuery 对象,你就可以随心所欲了。

HTML:

< a id="sectionName" name="sectionName"></ a>

JS:

var hashTag = window.location.hash;
$(hashTag).css({ position: "absolute", top: "30px" });
于 2013-02-12T19:57:51.153 回答
1

查看这个 jquery 示例。Smooth-Scrolling它还显示了如何设置偏移变量,以便您可以设置顶栏的缓冲区

于 2013-02-12T19:29:17.823 回答