Hammer.js阻止iOS Safari上的滚动事件

我已将Hammer.js事件添加到我网站上的某个元素。 他们都开火正确,一切都好,但一个问题引起了我的devise师的眼球。 他注意到,当您尝试用手指滚动页面时,没有任何反应。 不幸的是,这是一个破坏游戏的人。

所以我的问题是,如何在使用Hammer.js时保持滚动。

谢谢!

对于那些寻找解决scheme的人来说,这是我想出来的。

this.$hammer = $('img').hammer(); this.$hammer.on('touchstart', fingerDown) .on('touchend', fingerUp) .on('pinch', setScale); function fingerDown(e) { var fingersDown = e.originalEvent.touches.length; if (fingersDown > 1) { // Lock Scrolling over the zoom element by allowing Hammer.js to fire pinch events. toggleHammerScrolling(true); } } function fingerUp(e) { toggleHammerScrolling(false); } function toggleHammerScrolling(shouldScroll){ //This is where your implementation may change. Just do .get('pinch').set... on your own hammer object. this.$hammer.data('hammer').get('pinch').set({ enable: shouldScroll }); } function setScale(){ console.log('do pinching stuff here'); }