滚动到没有名字的哈希

时间:2015-10-28 13:51:14

标签: javascript jquery dom scroll

我尝试滚动到一个未命名的哈希,例如评论部分,但没有运气

$(document).ready(function () {
  console.log('ANC: ' + location.hash);

  setTimeout(function() {
    $('html,body').animate({
      scrollTop: window.location.hash.offset().top
    }, 'slow');
  }, 200);
});

打开链接

http://example.com/foo/bar.html#1234567890

不适用于滚动。我总是得到

  

未捕获的TypeError:window.location.hash.offset不是函数

location.href=location.hash;

效果很好但没有滚动太糟糕了。

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

hash只是一个字符串。元素可以有偏移,字符串则没有。

尝试:

$('html,body').animate({
  scrollTop: $(window.location.hash).offset().top
}, 'slow');