【问题标题】:jQuery animate scrollTop not working with anchor links in ChromejQuery animate scrollTop 不适用于 Chrome 中的锚链接
【发布时间】:2015-02-01 06:41:41
【问题描述】:

我在顶部带有锚链接的滚动 div 以跳转到 div 的某些部分,并使用按钮滚动回顶部。使用 jquery 它可以很好地返回页面顶部,但在 chrome 中,不是那么多。在 chrome 中,如果您使用锚链接跳转到“#target”,然后单击以返回页面顶部,它会向上滚动,然后向下跳回之前单击的目标锚。有趣的是,如果您手动向下滚动(不使用目标链接),scrollTop 将正常工作。有人可以帮我弄清楚这里发生了什么吗?

HTML:

<a href="#target1">Link 1</a>
<a href="#target2">Link 2</a>
<a href="#target3">Link 3</a>

...more HTML stuff here...

<div id="this_div">
<a name="target1"></a>
<a name="target2"></a>
<a name="target3"></a>
</div>
<div id="topbutton">TOP</div>

Javascript:

$(document).ready(function(){
$('#topbutton').click(function(){
$('#this_div').animate({scrollTop: 0}, "fast"});
});

【问题讨论】:

    标签: jquery google-chrome anchor scrolltop


    【解决方案1】:

    是的,我会继续回答我自己的问题。 WTFE。

    清除哈希,问题解决。

    $(document).ready(function(){
        $('#topbutton').click(function(){
            location.hash='';
            $('#br_content').animate({scrollTop: 0}, "medium");
        });
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-08-31
      • 1970-01-01
      • 2014-05-13
      • 2023-02-09
      • 2013-08-29
      • 1970-01-01
      • 2015-05-13
      相关资源
      最近更新 更多