我正在使用这个脚本滚动到顶部按钮:
$(document).ready(function(){
$(".upp").click(function(){
$('html, body').animate({scrollTop: '0px'}, 1200);
});
});
它将在动画时到达顶部,但动画不平滑enough.it在某些部分跳跃,然后滑动到顶部。我甚至尝试将值从1200增加到5000,但它在某些点跳跃时滚动。我使用的是简单的jquery库(最新版本)。您认为添加jquery UI会解决任何问题吗?请帮助。
6条答案
按热度按时间e0uiprwp1#
我认为最好的办法是利用
.animate()
的easing
选项From the documentation:
放松
.animate()
的其余参数是一个字符串,用于命名要使用的缓动函数。缓动函数指定动画在动画中不同点的速度。jQuery库中仅有的缓动实现是默认的(称为swing
)和以恒定速度进行的(称为linear
)。使用插件可以获得更多缓动函数。最值得注意的是jQuery UI suite .3yhwsihp2#
试试这个:
eqqqjvef3#
这不是缓动或动画问题。
流畅度取决于你的内容。就是这样。
如果你的网站图片太多,滚动会很痛苦。图片背景......不要想太多高质量的固定图片背景和平滑滚动......浏览器处理不好。
我发现的唯一的变通办法是完全废弃滚动,并通过改变容器的边距自己实现一个假的滚动。使用CSS3过渡通常是平滑的,即使是沉重的网站。但这通常不值得麻烦...
更新
如果剥离图像后仍然很慢,那么问题显然出在视差代码上。看看瓶颈。找出哪些帧导致延迟。看看是否可以优化代码。减少对DOM的引用?也许缓存一些元素?简化一些数学运算?
x3naxklr4#
您应该使用CSS3转换:{原始演示站点:http://mitgux.com/demo/smooth-scroll-to-top-using-css3-animations/index.php }
DEMO
v6ylcynt5#
x3naxklr6#
这将帮助您进行平滑滚动:
演示:http://jsfiddle.net/codebombs/GjXzD/