jQuery Mobile 滑动错误 - 滚动正在进行中

Posted

技术标签:

【中文标题】jQuery Mobile 滑动错误 - 滚动正在进行中【英文标题】:jQuery Mobile Swipe Error - Scrolling is in Progress 【发布时间】:2014-10-07 09:11:50 【问题描述】:

预期行为

我正在尝试为内容幻灯片添加基本的滑动功能。我向任一方向滑动,它就会很好地移动到下一张/上一张幻灯片。幻灯片在任一端都不会移动,并且可以从那里继续滑动。

问题

滑动时,幻灯片正确移动后,我在日志中收到以下错误:

“使用 cancelable=false 忽略取消 touchmove 事件的尝试,例如因为滚动正在进行中且无法中断。”

我还发现,当我到达幻灯片的尽头并尝试再次滑入停止的方向时,会触发错误。但是,当我尝试滑回正确位置时,滑动功能不再起作用。就好像窗口期望幻灯片动画但什么都没有,这会阻止触发任何其他功能。

我没有找到有关此错误的信息,并尝试了许多调试尝试和解决方案,但还没有运气。对此的任何建议将不胜感激。谢谢。

function swipeleftHandler(event) 
   changeInnerScene('left',true); 

function swiperightHandler(event) 
   changeInnerScene('right',true);


$(".frame-three").on("swipeleft": swipeleftHandler, "swiperight": swiperightHandler);

【问题讨论】:

你在使用第三方插件吗? 我没有运行任何其他插件。我正在加载 jQuery 和一个仅包含我需要的基本功能的自定义 jQuery Mobile 构建。错误/警告似乎来自 jQuery,而不是移动版本。 您是否成功使用了完整版的 JQuery Mobile?因为代码看起来很准确。 我不是。我也尝试了各种版本的 jQuery,因为这就是引发错误的原因,也没有运气。 由于我滑动和滑动的元素都是嵌套的,我一直在阅读有关传播的内容,但似乎也没有让我有所了解。 【参考方案1】:

我有一个非常相似的用例,呈现相同的错误。我一直在阅读有关 Chrome 节流异步 touchmove 事件的信息,我认为在 touchstart 取消事件会修复它,但它没有。

我猜你的元素的位置设置为绝对或固定,对吗?

将其更改为相对,看看它是否有效。就我而言,确实如此。

【讨论】:

以上是关于jQuery Mobile 滑动错误 - 滚动正在进行中的主要内容,如果未能解决你的问题,请参考以下文章

jQuery Mobile 和 TouchSwipe jQuery 插件错误

水平单页网站:Mobile-Webkit 滚动和滑动问题

在 jQuery Mobile 中滑动返回?

jQuery Mobile 滑动事件不起作用

Windows Phone 上的 JQuery Mobile 滑动事件

jquery mobile 滑动面板 - 在包含 iframe 的区域上滑动事件