在iOS 6中,触摸/拖动启发式已经改变。有没有办法恢复以前的行为?

在iOS 6中,触摸/拖动启发式已经改变。有没有办法恢复以前的行为?,ios,uiwebview,onclick,touch,ios6,Ios,Uiwebview,Onclick,Touch,Ios6,我们的iPad应用程序使用webkit用户界面进行大量用户交互,我们现在正在处理来自用户的投诉,即在iOS 6中,用户界面忽略了他们的触摸。我们已经进行了并排比较,现在可以非常肯定的是,虽然iOS 5中的触摸小拖动释放手势会在onclick事件中触发,但iOS 6中的触摸小拖动释放手势不会触发。因此,在iOS 6中,当按下UI上的按钮时,您需要非常小心,不要移动手指。(或者,也许他们只是改变了小阻力中“小”的定义。) 我们相信在“设置”>“常规”页面中禁用多点触控手势会有所改善,尽管我们不认为这

我们的iPad应用程序使用webkit用户界面进行大量用户交互,我们现在正在处理来自用户的投诉,即在iOS 6中,用户界面忽略了他们的触摸。我们已经进行了并排比较,现在可以非常肯定的是,虽然iOS 5中的触摸小拖动释放手势会在onclick事件中触发,但iOS 6中的触摸小拖动释放手势不会触发。因此,在iOS 6中,当按下UI上的按钮时,您需要非常小心,不要移动手指。(或者,也许他们只是改变了小阻力中“小”的定义。)

我们相信在“设置”>“常规”页面中禁用多点触控手势会有所改善,尽管我们不认为这不是安慰剂效应

作为测试,我尝试删除滚动条以防止:

  document.body.addEventListener('touchmove', function(e){ e.preventDefault(); });
从我们的代码,但它没有任何区别(除了使拖动事件确实明显拖动)

我的下一个想法是去经历和改变我们依赖onclick的所有地方,而不是依赖ontouchstart,但是,好吧,恶心。(尤其是在桌面浏览器中也需要相同代码的情况下,令人恶心。)

我们一个人在这里吗?我在搜索中没有发现任何关于这方面的抱怨。有什么好主意吗?

你并不孤单


我们在新游戏中遇到了类似的问题,同时我们将支持扩展到iPhone5。我们现在正在处理这两个事件。

还有一些观察:1。对于使用onclick处理程序的元素,这是一个更大的问题,而对于使用onclick处理程序的元素,这是一个更小的问题。2.我一直在使用ontouchend而不是onclick,虽然它可以工作,但确实会导致一些奇怪的结果。例如,在一个UI中,有一个元素出现在用户刚刚触摸过的同一位置,select将自动触发。