微信小程序手势操作之单触摸点与多触摸点的示例分析

  介绍

这篇文章给大家分享的是有关微信小程序手势操作之单触摸点与多触摸点的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

<强>演示

为了研究小程序是否支持多手指,需要使用touchstart, touchmove, touchend

//, index.wxml   & lt; view  id=癵estureView", bindtouchstart=皌ouchstartFn", bindtouchmove=皌ouchmoveFn", bindtouchend=皌ouchendFn",在   & lt;/view> //index.js   touchstartFn:函数(事件){   console.log才能(事件);   },   ,touchmoveFn:函数(事件){   console.log才能(事件);//才能,console.log(“移动:PageX:“+, event.changedTouches [0] .pageX);   },   ,touchendFn:函数(事件){   console.log才能(事件);//才能,console.log(“移动:PageX:“+, event.changedTouches [0] .pageX);   以前,}

单触摸点,多触摸点

官方文档:changedTouches

changedTouches数据格式同触摸。表示有变化的触摸点,如从无变有(touchstart),位置变化(touchmove),从有变无(touchend touchcancel)。

“changedTouches": [{,   “identifier": 0,,“pageX": 53岁,“pageY": 14日,“clientX": 53岁“clientY": 14   }]

<强>真机效果

实现以上演示后模拟器是无法看到多触摸点的数据的,所以你需要真机来测试。

看下真机的日志信息

微信小程序手势操作之单触摸点与多触摸点的示例分析

<强>在changedTouches中按顺序保存触摸点的数据,所以小程序本身支持多触摸点的手势

<强>结论

设想:既然小程序的手势是支持多触摸,而且可以获取到相关的路径,那么相关路径计算也是可行的。

场景:多触摸交互效果,手指绘制等

<强>触摸点数据保存

为了能够来分析触摸点的路径,最起码是简单的手,势如左滑,右滑,上滑,下滑,我们需要保存起路径的所有数据。

触摸事件

触摸触发事件分为“touchstart"“touchmove",“touchend",“touchcancel"四个

详见:https://mp.weixin.qq.com/debug/wxadoc/dev/framework/view/wxml/event.html20

<强>存储数据

var  _wxChanges =, [];   var  _wxGestureDone =,假;   const  _wxGestureStatus =, (“touchstart",,“touchmove",,“touchend",“touchcancel"];//,收集路径   function  g (e) {   如果才能(e.type ===,“touchstart") {   ,,,_wxChanges =, [];   ,,,_wxGestureDone =,假;   ,,}   如果才能(! _wxGestureDone) {   ,,,_wxChanges.push (e);   ,,,如果(e.type ===,“touchend") {   ,,,,,_wxGestureDone =,真的,,   ,,,}else 如果(e.type ===,“touchcancel") {   ,,,,,_wxChanges =, [];   ,,,,,_wxGestureDone =,真的,,   ,,,}   ,,}   }

感谢各位的阅读!关于“微信小程序手势操作之单触摸点与多触摸点的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

微信小程序手势操作之单触摸点与多触摸点的示例分析