【问题标题】:Scroll event fire delay in mobile移动设备中的滚动事件触发延迟
【发布时间】:2016-07-12 11:02:10
【问题描述】:

我得到了滚动的事件侦听器,并且在桌面浏览器(滚动开始时 - 事件立即触发)和移动设备中的 chrome 浏览器(chrome 最新版本 + android 版本 5.0)上一切正常,但在其他移动浏览器上(ff , android 浏览器)这工作方式不同,在谷歌搜索后我找到了原因:这是因为直到滚动动作完全停止(从屏幕上释放手指)才会触发滚动事件。

我的问题是有一些解决方法,也许是一些最佳实践,所以它会正常触发(对于桌面)并且没有显着的性能变化?

*JS 解决方案(jquery 没有)。

【问题讨论】:

    标签: javascript mobile scroll


    【解决方案1】:

    您可以使用iScroll。它不依赖于 jQuery,并且可以实现您想要的(在移动平台上触发滚动事件 ~ 持续不断地)。

    您可以参考this answer 了解如何使用 iScroll 来实现。

    【讨论】:

    • 你能说出它是如何工作的吗?我不想仅仅为了克服这个小问题而简单地导入其他代码文件。必须是另一种更清洁的方式来实现这一目标
    【解决方案2】:

    我同意 Mohit Bhardwaj 的回答,我只想说一些关于 iScroll 的重要事情。

    iScroll 的运行依赖于 css3 translate 和 touchMove、touchStart 和 touchEnd 等 js 事件。您可以认为它处理页面中的整个滚动系统或您设置它处理的元素容器。 有一点你应该知道,如果你想在 iScroll 中监听滚动事件,你必须导入 iscroll-probe.js,并将 probeType 参数设置为 2 或 3。否则你不会得到滚动事件。

    iScroll 版本 5 不错,我在很多项目中都使用它。你可以看到它的文档和代码 here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-21
      • 1970-01-01
      • 2019-01-06
      • 2015-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多