gpt4 book ai didi

javascript - 为什么.animate到scrollTop在动画之前跳转到0?

转载 作者:行者123 更新时间:2023-12-01 02:34:44 26 4
gpt4 key购买 nike

我正在玩视差滚动,就像that nike site一样。所以我一直用scrollTop确定用户在页面上的垂直位置,然后我根据该值的变化调整元素的位置。

这里我舍入了scrollTop 值并记录它。我稍后会显示日志。

var distance = 60*(Math.round($(window).scrollTop()/60));
console.log(distance);

然后,单击时,我调用此函数,该函数滚动到我传递给它的scrollTop 值。

function goTo(n){
console.log('begin animating');
$('html,body').animate({scrollTop: n},2000);
}

问题来了,滚动顶部值在动画之前跳转到 0。

所以我会在页面的一半处记录:

begin animating
0
6240
6180
6120
// etc...

我定位内容的方式依赖于scrollTop值的准确性。所以我的问题是:

在播放动画之前如何防止scrollTop 值跳转到0?

如果需要更多信息,请告诉我。
这是该网站的实时版本:http://theblueeyeguy.com/moon/Illumination/

(单击“下一步”,然后单击“上一个”以中断它)

最佳答案

可能是因为您使用的是 href="#" 链接。

return false; 添加到您的 onclick 属性。

<a href="#" onClick="goTo(2160);return false;">< Prev | </a>

关于javascript - 为什么.animate到scrollTop在动画之前跳转到0?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8319051/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com