Javascript 用jQuery在移动设备上流畅地制作动画?
在加载一个相当长的页面时,我需要平滑地向下滚动到页面上的某个位置,这样用户就不必这样做了Javascript 用jQuery在移动设备上流畅地制作动画?,javascript,jquery,html,jquery-animate,Javascript,Jquery,Html,Jquery Animate,在加载一个相当长的页面时,我需要平滑地向下滚动到页面上的某个位置,这样用户就不必这样做了 $(document).ready(function () { // Handler for .ready() called. $('html, body').animate({ scrollTop: $('#today').offset().top }, 'slow'); }); ... <div id="today">foo</div>
$(document).ready(function () {
// Handler for .ready() called.
$('html, body').animate({
scrollTop: $('#today').offset().top
}, 'slow');
});
...
<div id="today">foo</div>
$(文档).ready(函数(){
//调用了.ready()的处理程序。
$('html,body')。设置动画({
scrollTop:$(“#今天”).offset().top
}“慢”);
});
...
福
这在桌面浏览器中运行得很好,但在iPhone上,尤其是在Android上,它非常不稳定
问题:
.animate()
放松
选项默认设置为摆动
,尝试设置为线性
,例如。,
$(文档).ready(函数(){
//调用了.ready()的处理程序。
$('html,body')。设置动画({
scrollTop:$(“#今天”).offset().top
},2000年,“线性”);
});代码>
#今天{
位置:绝对位置;
顶部:1000px;
}
今天
1。取决于你认为什么是“肉干”2。是的,只需使用1000而不是“慢”或任何其他number@monkeyinsight我尝试使用一个较大的数字,但没有任何效果。检查文档,它在那里工作。您也可以尝试此库,它取代了setTimeout
函数,该函数与设备上可能的FPS不对应,通过requestAnimationFrame
这是一种更现代的动画制作方法。顺便说一句,我不建议使用jQuery,因为它本身非常“急促”,会减慢网站的速度