popstate事件不为滚动设置动画

时间:2014-06-10 06:03:32

标签: javascript html5 html5-history

我正在建设的网站有一种非常奇怪的行为。我希望能够在用户单击后退/前进按钮时将动画滚动到上一部分。这是我的代码:

var scrollToSection = function($section) {
    $('body, html').animate({
        scrollTop: $section.offset().top
    }, 700, 'easeInOutExpo');
}

$(window).on('popstate', function(e) {
    e.preventDefault(); 
    scrollToSection($(location.hash));
});

这只是直接向上跳转到没有动画滚动的部分。我究竟做错了什么?

完整代码:http://codepen.io/Gasimzada/pen/FHzsG。如果在新选项卡中打开输出框,则可以在滚动到底部或其他位置后单击后退按钮来查看奇怪的行为。

0 个答案:

没有答案