手势开发研究,微信小程序的单触摸电与多触摸点

2018/4/3 18:37:24
摘要: 在微信小程序的开发过程中,手势常常被应用在canvas、交互的开发中,所以手势对一些开发效果来说是比较重要的

在微信小程序的开发过程中,手势常常被应用在canvas、交互的开发中,所以手势对一些开发效果来说是比较重要的。本文我们探讨的是,微信小程序开发是否支持多触摸点,即多手指的触屏使用,根据官方给出的开发文档说明,我们这一次的研究需要使用到touchstart、touchmove与touchend。

  1、Demo

// index.wxml

<view id="gestureView" bindtouchstart="touchstartFn" bindtouchmove="touchmoveFn" bindtouchend="touchendFn" >

</view>

//index.js

touchstartFn: function(event){

    console.log(event);

  },

  touchmoveFn: function(event){

    console.log(event);

    // console.log("move: PageX:"+ event.changedTouches[0].pageX);

  },

  touchendFn: function(event){

    console.log(event);

    // console.log("move: PageX:"+ event.changedTouches[0].pageX);

  }

  2、单触摸点、多触摸点分析

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

 

"changedTouches":[{

"identifier":0, "pageX":53, "pageY":14, "clientX":53, "clientY":14

}]

  3、真机测试效果

实现以上Demo之后,模拟器无法看到多触摸点额的相关数据,需要真机测试来查看效果。

 微信小程序开发案例

 

  4、结论分析

在changedTouches中可以按顺序保存触摸点的数据,因此,小程序本身也是支持多触摸点手势开发的,而且通过这类开发可以获取到相关的路径,对相关路径也可以进行计算。这种多触摸点可以被运用在多触摸交互效果、手指绘制等方面上。

  5、触摸点的数据保存

为了能够分析触摸点的路径,需要保存起路径的所有数据。数据存储代码如下:

var _wxChanges = [];

var _wxGestureDone = false;

const _wxGestureStatus = ["touchstart", "touchmove", "touchend","touchcancel"];

// 收集路径

function g(e){

    if(e.type === "touchstart"){

        _wxChanges = [];

        _wxGestureDone = false;

    }

    if(!_wxGestureDone){

        _wxChanges.push(e);

        if(e.type === "touchend"){

            _wxGestureDone = true;  

        }else if(e.type === "touchcancel"){

            _wxChanges = [];

            _wxGestureDone = true;

        }

    }

}


声明:文章"手势开发研究,微信小程序的单触摸电与多触摸点"为互诚科技—微信小程序开发公司的原创文章,转载请注明出处,谢谢合作!
标签:小程序干货
电话咨询:18011971195(黄先生)
在线留言:
微信扫码,关注我们
相关文章
  • 微信小程序开发升级应用,玩转高端多媒体功能!

    自从四月份微信官方像开了挂一样地开发小程序之后,它升级应用功能的脚步就再也停不下来,所以现在又带来了两个新的高端功能,让运营者可以轻松玩转多媒体功能

  • 闪开发票+自助打印小程序解决方案加快报销进程

    前一阵子微信官方开放的闪开发票的功能,一经推出就受到广大用户的支持与使用,不过这个功能也只是支持在开发的时候,可以直接将自己之前在“微信发票助手”中的开票信息传输给开票工作人员而已,并不是整个开票流程都是全自助化

  • 小程序入口总结:哪些入口效率比较高

    微信小程序从一开始的没有固定入口到现在已经发展成为多个入口结合一起发展的形式。不过,有很多入口,当然就会存在流量大的入口与流量较小的入口,企业商家掌握这些入口的大概效率,就能去较好地选择宣传方式与阵地

  • 个人开发者如何开发微信小程序

    虽然微信小程序一开始并不支持个人开发者开发小程序,但是后来依旧放开了这一限制,只要实名认证的个人就可以成为小程序的开发者,加入到这一潮流行列当中。不过,个人开发者中有懂代码的、有技术人员支持的、当然也有没人才又不懂代码的,到底个人开发者要如何去开发微信小程序呢?这个问题值得我们来好好探讨一番。

  • 目前微信小程序开发的市场反应如何

    对于微信小程序开发的市场反应可以分为三个阶段:过去、目前与未来。过去式作为已经发生过的事情,小程序低迷的市场反应大家也已经看在眼中

  • 小程序开发公司分析如何开发获取用户基本信息

    微信小程序平台运营时,要获取获取用户的基本信息,是需要用户授权的,而这种授权获取的开发,需要调用wx.login接口、login接口等