jQuery动画scrollTop无法使用Chrome中的锚链接

时间:2015-02-01 06:41:42

标签: jquery google-chrome anchor scrolltop

我在顶部滚动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"});
});

1 个答案:

答案 0 :(得分:2)

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

清除哈希,问题解决了。

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