【发布时间】:2016-01-21 21:18:17
【问题描述】:
我有这个动画在 jquery 中工作得很好,除了它很迟钝。 onclick,它会平滑地向下滚动到想要的元素。
$('#aboutMenu').click(function(){
$('html, body').animate({
scrollTop: $( $(this).attr('href') ).offset().top -200
}, 900);
return false;
据此网页:http://julian.com/research/velocity/
我应该能够简单地“下载 Velocity,将其包含在您的页面中,并将 jQuery 的 $.animate() 的所有实例替换为 $.velocity()。您将立即看到所有浏览器和设备的性能提升 -尤其是在移动设备上。”
好吧,我做到了,但是当我点击时,什么也没有发生。
我错过了什么?
【问题讨论】:
-
Velocity 仅适用于 CSS 动画属性,不适用于
scrollTop,它会更改非 CSS 样式元素的属性。 -
@A.Wolff:很好的链接,一直在寻找权威参考
-
@TrueBlueAussie 有滚动属性/参数,应该在链接中使用:julian.com/research/velocity/#scroll 并且非常完整,在现代浏览器中(目前只有 FF),scrollIntoVIew() 带有动画可以使用,但不确定它是否适合 OP 需求,而且目前还不是很有用
-
编辑:OP 想要一个 200px 的“间隙”(?!),所以不确定
scrollIntoView()是否可以在未来使用,甚至不确定如何使用$.fn.velocity('scroll',....)设置它方法
标签: jquery jquery-animate velocity velocity.js