2010-10-01 32 views
0

我的主页有一系列链接。当点击这些链接时,我希望用户被带到点击页面的某个区域。通常我会在主页上使用以下HTML:使用jquery向下滑动到散列位置

<a href="products.html#link1">LINK</a> 

其中#link1是我要滚动到的div。这一次,我想用jquery从页面顶部给它一个不错的优雅滚动,而不是直接在该div上加载。所以当主页点击主页时,产品页面出现并滚动到哈希div。任何帮助,将不胜感激。

回答

2

您可以使用scrollTo来实现此目的。困难的部分是哈希需要从HTTP请求持续到HTTP响应 - 如果浏览器支持,这可以使用cookie或可能的local storage (HTML 5)来完成。

如果启用JavaScript,防止默认行为锚

  • 检查的哈希值将href我可能会通过

    1. 处理它检查。如果存在的话,坚持在选择的存储中的价值。如果不存在,清除存储值可能是一个好主意,因为我们不想尝试在请求的页面加载时滚动到某些内容。
    2. 加载下一页时,检查存储器中的值并使用scrollTo插件滚动到元素。
  • 1

    这是一个jQuery plugin,它可以做你想做的事。它会让你指定要滚动的锚点,以及滚动持续时间的长短,所以它可以平滑,快速等。看起来很容易实现。