【发布时间】:2011-09-16 18:08:06
【问题描述】:
我正在开发一个 jquery-mobile 应用程序,但遇到了一些问题;我想使用 jquery 的 animate() 来轻轻滚动“回到顶部”我的应用页面。
以下代码 sn-p 在除我的一个测试浏览器之外的所有浏览器中都运行良好。桌面上的 Chrome 和 Firefox、iPhone 上的 Safari 和 Android 上的 Firefox Beta 都很好。动画完成后,默认的 Android 浏览器 (webkit-mobile IIRC) 会滚动回锚点。
$("a[href='#top']").live('click', function() {
$("body").animate({ scrollTop: 0 }, "slow", function() {
// anim complete
setTimeout(function() { // not needed, attempt to brute-force
window.scrollTo(0,0);
alert('foo'); // <- Android scrolls back to anchor after showing alert
}, 50);
});
});
谁能建议 a) 是什么导致 Android 浏览器向后滚动和/或 b) 建议解决方法?如果它有所不同,我目前正在测试的设备运行的是 Android 2.3.2。
【问题讨论】:
标签: javascript jquery android jquery-mobile mobile-webkit