【问题标题】:How to capture scroll start event on iPhone/Android如何在 iPhone/Android 上捕获滚动开始事件
【发布时间】:2011-10-24 17:30:21
【问题描述】:

我正在使用带有移动站点的 JQuery 在没有位置:固定支持的情况下重新定位滚动上的标题导航。这很好用,当用户停止滚动时,标题会放回页面顶部。

为了增强用户的体验,我想在用户开始滚动时隐藏()标题,然后在他们停止时让它滑入。问题是滚动事件仅在用户停止滚动时触发。我读到有 iOS 特定的触摸事件,但有什么方法可以使用共同的代码在 iOS 和 Android 上捕获滚动开始事件?

谢谢

【问题讨论】:

    标签: jquery android iphone events scroll


    【解决方案1】:

    我相信jQuery Mobile,可以做到这一点。看看下面的代码:

    $(document).bind("scrollstop", function() {
    
    //What occurs when the scrolling stops
    alert("You have stopped scrolling");
    });
    
    $(document).bind("scrollstart", function() {
    
    //What occurs when the scrolling starts
    alert("You have started scrolling");
    
    });
    

    【讨论】:

    • 谢谢,我早该想到这一点,我也可以使用网站上的其他一些 JQuery 移动功能。
    • 实际上,需要注意的是,iOS 不允许在滚动开始直到停止之后进行任何 DOM 操作。因此,不幸的是,您无法删除 scrollstart 上的标题。
    【解决方案2】:

    您可以从 jQuery Touchwipe 开始:它是一个添加新事件、wipeleft 和wiperight 的插件。

    可以轻松修改以将水平擦除更改为垂直擦除(将 x 更改为 y) http://plugins.jquery.com/project/Touchwipe-iPhone-iPad-wipe-gesture

    它适用于 Android、IOS 和 BBOS。

    【讨论】:

    • 我不知道这个,以后会派上用场的。不过,我打算使用 JQuery Mobile 来做这个,我可以使用它的一些其他功能。
    【解决方案3】:

    此滚动启动事件在 android 2.3.4 的默认 android 浏览器中存在故障 当用户开始滚动时,滚动启动事件不会 100% 触发。我正在尝试追查问题。我正在寻找在 scrollstart 事件之前触发的任何事件。它也可能是我代码中某处的冲突事件。我需要先排除这种可能性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-02
      • 1970-01-01
      • 1970-01-01
      • 2021-10-30
      • 1970-01-01
      相关资源
      最近更新 更多