链接到另一个页面,滚动到div锚点

时间:2016-10-23 23:55:27

标签: jquery html hyperlink anchor scrolltop

是否可以链接到您网站上的其他网页,但是将浏览器滚动到锚点div?例如,我网站的大部分内容都在主页上,分为约,联系等部分。

我希望能够从另一个子页面链接到其中一个div。

以下代码就是这样做的,但仅当链接与目标位于同一页面时才有效:

<a href="#about" id="about-link">About</a>

JS:

$("#about-link").click(function() {
  $('html, body').animate({
    scrollTop: $(".wrapper_about").offset().top
  }, 0);
}); 

2 个答案:

答案 0 :(得分:1)

您的链接必须包含其他页面的文件名(和文件路径,如果它不在同一目录中):

<a href="other_page.html#about" id="about-link">About</a>

答案 1 :(得分:0)

我已经通过应用此方法使其工作:

<a href="#about" id="about-link">About</a>

JS:

$("#about-link").click(function() {
  $('html, body').animate({
    scrollTop: $(window.location.hash).offset().top // Target hash not div
  }, 0);
});

请务必注意,您的href目标必须与要锚定的元素的ID相匹配。