javascript - hammer.js - ipad 上的拖动事件未连续触发

标签 javascript jquery hammer.js

使用 hammer.js 拖动在桌面浏览器上运行良好。连续触发直到 dragEnd。但在 iPad 上它只会触发一次。

hammer(container).on( 'drag', function (e) {_this.onDragging.call(_this, e);}, false );

//onDragStart we init this.start = e.pageX

onDragging : function (e) { 
var diff=this.start-e.pageX;
moveTimeLine(e.pageX);
this.start=e.pageX;
}

为了使时间线的拖动更顺畅,但拖动事件只触发一次,而不是连续触发。

moveTimeLine() 按指定像素移动时间线,因此需要一些时间来反射(reflect)。最终 dragging 事件只调用一次。连我都拖得很慢。

当用户在 iPad 上移动手指时,是否可以通过任何方式触发拖动事件?????

最佳答案

查看 https://github.com/EightMedia/hammer.js/issues/458

只需将 e.preventDefault() 添加到您的函数中,您就可以开始了。

编辑:如果解决方案对您来说不是那么容易(也许您需要垂直轴上的 native 滚动),请查看此线程:https://github.com/EightMedia/hammer.js/issues/245

关于javascript - hammer.js - ipad 上的拖动事件未连续触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21397876/

相关文章:

javascript - 尝试使用 jQuery 验证表单字段

jquery - 使用 jquery 在多个类之间进行更改

javascript - hammer-time.min.js 包含未定义的函数 hasTouchNone

javascript - 如何确定 iOS 上 Safari 崩溃的原因?

javascript - ReactJs this.props.history.push() 不起作用

javascript - 如何在 asp.net C# 中将文本框文本更改为另一个文本框?

javascript - 如何通过for循环中的append将多个元素插入到一个元素中?

javascript - iframe 与 hammer.js 手势冲突

jquery - 双击并单击冲突(jQuery 和 Hammer.js)

javascript - AngularJS: Uncaught Error :[$rootScope:infdig]