这是我的代码:
function handleOrientationChange() {
//$body.animate({scrollTop: 0});
window.scrollTo(0,0);
}
$window.on('orientationchange', handleOrientationChange);
在Android设备上它工作正常,但是当在iOS Safari上使用时,window.scrollTo(0,0)无法正常工作。在控制台中按下window.scrollTo(0,0)按预期工作。使用$ body.animate({scrollTop:0})而不是本机scrollTo工作。我还尝试将本机代码移动到下一个tick:
window.setTimeout(function () {
window.scrollTo(0,0);
}, 0);
也不工作。
jQuery的animate()里面有什么能让它起作用?我虽然它可能与动画队列相关,但是在.animation中传递{queue:false}作为opt对象并不能阻止它工作所以这不是队列相关的。 为什么原生代码不适用于移动版Safari?