【发布时间】:2011-07-21 09:35:53
【问题描述】:
假设我有一个包含多行的框/表。这些行是可拖动的。
现在我有一个 JS,我在其中为 iPad 的 touchstart、touchmove、touchend 实现了事件处理程序......基本上它们只是将这些事件映射到相应的鼠标事件,如 mouseover、mousedown、mouseup 等
现在这是我的问题;
虽然我可以从表格中拖动任何行,但我也希望能够滚动它。当我在屏幕上按下任何手指并向下拖动时,它会对该行执行拖动操作(因为我使用 event.preventDefault() 进行 touchmove 以防止默认滚动区域)。
现在我明白了,我不能用一个手指同时完成这两个动作(拖动/滚动).. 所以我想在使用两指时实现/有一个滚动动作..(另一种情况,即对于单指,它应该执行拖动动作)
现在我知道event.touches.length/event.targetTouches.length 在屏幕上没有手指,我不知道如何使用它来执行滚动操作...仅供参考,此滚动类似于我们在 iPad 上进行固定高度的 div 滚动 (overflow:auto),iPad 提供了开箱即用的功能..
【问题讨论】:
标签: javascript ios mobile-safari dom-events