移动浏览器上的 scrollTop() 滞后/滚动分辨率问题

scrollTop() lag/scroll resolution issue on mobile browsers

本文关键字:滞后 滚动 分辨率 问题 浏览器 scrollTop 移动      更新时间:2023-09-26

嗨,我正在编写一个包含元素列表的网页(在 UL 中(

每 11 个元素粘在页面顶部。 因此,当您向上滚动并且#11到达页面顶部时,它会停止。(我实际上是克隆LI并将其粘贴到顶部(

现在,当第 22 个元素出现时,它会"推"第 11 个元素。

基本上,我正在尝试重新创建您在地址簿上看到的iOS标题。

该代码使用 jQuery 并绑定到窗口的滚动事件。 然后我计算元素在哪里并施展魔法。

这一切都在桌面上非常出色(Chrome,Firefox,甚至IE!(。 但是,当我在Galaxy S3上的Chrome上测试它时,在检测顶部的元素时似乎存在滞后。

我的猜测是,由于移动设备上的处理能力,它们不会像在台式机上那样频繁地触发滚动事件。 如果您从另一个 SO 帖子中查看此小提琴并在移动设备上运行它,您将看到相同的问题。

http://jsfiddle.net/jaibuu/YqPzS/

function checkScrolling() {
    if ($('#content').scrollTop() > mastheadHeight) {
        menu.addClass('fixed');
    } else {
        menu.removeClass('fixed');
    }
}
$('#content').scroll(function () {
    checkScrolling();
});

尝试做同样事情的jquery插件也有类似的问题。 查看此页面上的演示

http://www.teamdf.com/web/showcasing-jquery-list-with-a-fake-iphone/147/

那么,是否有可能在移动设备上获得与在桌面上相同的滚动速度/分辨率?

谢谢。

您可以尝试使用Zepto。使用卷轴使其更容易。