需求
- 移动实现手指触摸移动物体
- PC端实现鼠标拖拽物体
实现
- 移动端 通过touchstart和touchmove事件实现
1、touchstart时记录手指按下的位置 x=event.touch[0].pageX, y=event.touch[0].pageY,为A(为了方便描述)
2、移动时touchmove中获取移动过程中的位置,为B
3、计算此次移动的距离C(正或者负),
4、将移动物体的绝对位置更新:原始位置加上移动距离,
5、更新A的值。进入下一次移动事件
- 管理端
1、mousedown时记录手指按下的位置 x=event.clientX, y=event.clientY,为A(为了方便描述)
2、移动时touchmove中获取移动过程中的位置,为B
3、计算此次移动的距离C(正或者负),
4、将移动物体的绝对位置更新:原始位置加上移动距离,
5、更新A的值。进入下一次移动事件