jQuery animate实现按钮滚动时先慢后快的异常问题咨询
问题原因与解决办法
原因
jQuery 的 animate() 方法默认采用 swing 缓动函数,这个函数的运动逻辑是先加速、后减速的曲线型变化,并非匀速直线运动,所以会出现滚动初始阶段缓慢、后续速度提升的现象。
解决方法
要实现匀速滚动,只需在 animate() 的第三个参数位置指定 linear 缓动函数即可,修改后的代码如下:
$('#button1').click(function(){ $('html').stop().animate({ scrollTop: $('#div12').offset().top }, 800, 'linear'); });
内容的提问来源于stack exchange,提问作者lucianopinochet
相关产品推荐
相关产品推荐

