【问题标题】:iPhone web app - touch and gesture eventsiPhone Web 应用程序 - 触摸和手势事件
【发布时间】:2011-08-16 15:31:35
【问题描述】:

查看苹果网站和互联网上有关触摸和手势 javascript 事件的(相当过时的)文档,我不禁注意到在调用函数期间返回的手势事件仅包含值“比例”和“旋转”。我是否遗漏了什么或者它们是唯一返回的两个值?

很难在 iPhone 上看到返回对象的值,因为它们令人讨厌地只显示为它们的类型和名称。例如,在控制台中记录返回的对象时,它只显示为“[object TouchEvent]”。

我想要实现的是在发生两指滑动时运行一个函数,然后无论滑动是向左还是向右,相应地更改页面。

我尝试了一个更复杂的触摸事件和(我认为更容易的)手势事件,但手势事件只返回缩放和旋转(显然),并且触摸事件在我这样做的方式上似乎相当复杂。

有谁知道返回的对象是否只是缩放和旋转,如果是,你知道我怎样才能用 touchevent 获得相同的效果吗?

【问题讨论】:

  • 似乎值在那里,(pageX,pageY)但都只返回一个'0'

标签: javascript iphone web-applications touch-event


【解决方案1】:

您应该使用为您提供[运动]轨迹的 touchevent 来检测该轨迹是否属于“滑动”类别,使用您自己的滑动定义。

通常“滑动”手势是特定于上下文的:例如它应该从特定的 DOM 元素开始,并可能在那里结束。这意味着对于特定的 DOM 元素,某些手势不是“滑动”,但对于它的容器,例如它是滑动。因此,您通常无法为此生成冒泡事件。

可以在不知道上下文的情况下检测缩放和旋转手势 - 因此系统会为您生成它们。

有现成的框架和库具有滑动手势检测器。至少对于一些流行的容器,比如垂直列表中的项目等等。

【讨论】:

  • 是的,感谢您的回复。我在最后找到了一个列表,其中显示了事件被触发的顺序。这让我意识到触摸事件可以与手势事件一起使用 :) 感谢您的回复
猜你喜欢
  • 2015-04-19
  • 2014-10-29
  • 2011-01-01
  • 1970-01-01
  • 2023-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多