touchstart     手指触摸动作开始
touchmove    手指触摸后移动
touchcancel  手指触摸动作被打断,如来电提醒,弹窗
touchend      手指触摸动作结束

拖拽操作案例1:(注意按钮拖出屏幕边缘处理)

<view id="id" bindtouchmove="handletouchmove" class=‘demo‘ style=‘top:{{ballTop}}px; left: {{ballLeft}}px‘></view>
page{background:red}
.demo{ width:60px; height:60px; background:#545345;box-shadow:2px 2px 10px #AAA;border-radius: 20px;position: absolute; }
Page({data: {ballTop: 0,ballLeft: 0,screenHeight: 0,screenWidth: 0},onLoad: function () {// 一是会将按钮拖出屏幕边缘,// 二是按钮始终在鼠标右下方。// 获取屏幕宽高var _this = this;wx.getSystemInfo({success: function (res) {_this.setData({screenHeight: res.windowHeight,screenWidth: res.windowWidth,});}});},handletouchmove: function (event) {// console.log(event)let pageX = event.touches[0].pageX;let pageY = event.touches[0].pageY;//屏幕边界判断   中心点位置if (pageX < 30 || pageY < 30)return;if (pageX > this.data.screenWidth - 30)return;if (pageY > this.data.screenHeight - 30)return;//左上角位置this.setData({ballTop: event.touches[0].pageY - 30,ballLeft: event.touches[0].pageX - 30,});}
})

手势识别案例2:

<view id="id" bindtouchstart="handletouchtart" bindtouchmove="handletouchmove"
style="width:100%px;height:80px;line-height:80px;color:#fff;text-align:center; background:red">
{{text}}
</view>
Page({data: {lastX: 0,lastY: 0,text: "没有滑动",},handletouchmove: function (event) {// console.log(event)let currentX = event.touches[0].pageXlet currentY = event.touches[0].pageYlet tx = currentX - this.data.lastXlet ty = currentY - this.data.lastYlet text = ""if (Math.abs(tx) > Math.abs(ty)) {//左右方向滑动if (tx < 0)text = "向左滑动"else if (tx > 0)text = "向右滑动"}else {//上下方向滑动if (ty < 0)text = "向上滑动"else if (ty > 0)text = "向下滑动"}//将当前坐标进行保存以进行下一次计算this.data.lastX = currentXthis.data.lastY = currentYthis.setData({text: text,});},handletouchtart: function (event) {// console.log(event)// 赋值this.data.lastX = event.touches[0].pageXthis.data.lastY = event.touches[0].pageY}
})

多点触控案例3:

根据相关功能可进行通过编辑器-远程调试,如手指张开的操作,可以分别判断两个触摸点的移动方向,比如靠左的触摸点向左滑动,靠右的触摸点向右滑动,即可判定为手指张开操作。

微信小程序~触摸相关事件(拖拽操作、手势识别、多点触控)相关推荐

  1. android可拖拽九宫格,微信小程序实现九宫格图片拖拽

    (在真机上的效果就不演示了,是差不多的) 实现思路 布局 在这里运用到了微信小程序的moveable-area和moveable-view两个标签. moveable-area是可拖拽的区域,需要设置 ...

  2. 微信小程序(游戏)----拖拽拼图(图片分块和打乱顺序)

    效果体验二维码 如果文章对你有帮助的话,请打开微信扫一下二维码,点击一下广告,支持一下作者!谢谢! 效果图 图片分块 创建二维数组 typeArr 和一维有序数组 pointsArr: 计算每个块区v ...

  3. 微信小程序WebSocket相关问题说明

    看本帖的前提是:你的WebSocket在小程序之外是正常可用的:因为WebSocket不是小程序独有的,所有大部分问题在网上是可以找到说明的,本帖只是聚合了一些小程序中使用WebSocket中遇到的问 ...

  4. 简单描述下微信小程序的相关文件类型?

    简单描述下微信小程序的相关文件类型? 微信小程序项目结构主要有四个文件类型,如下: .WXML 是框架设计的一套标签语言,结合基础组件.事件系统,可以构建出页面的结构.内部主要是微信自己定义的一套组件 ...

  5. [微信小程序]微信小程序点击事件返回值的target分析

    微信小程序点击事件返回值的target分析 测试过程 在微信小程序中创建以下图片 然后在调试中点击下面第5个. console返回两个e 第一个e是第5块小块的e 第二个e是下面全部9小块组成的大块的 ...

  6. uniapp 判断页面是否是横竖屏,解决微信小程序video组件全屏播放视频遮盖自定义播放控件问题

    如果res.deviceOrientation 等于landscape 的话是竖屏,portrait则是横屏.因为用户每旋转一次屏幕就会触发里面的onShow钩子,因此在页面显示或横竖屏变化都会触发这 ...

  7. 微信小程序使用云函数进行mysql操作

    微信小程序使用云函数进行mysql操作 其他操纵数据库方式的一些问题 准备工作 云函数代码 调用云函数时候的代码 最后还需要注意的一些小事情: 其他操纵数据库方式的一些问题 现在使用小程序,对数据库的 ...

  8. 微信小程序-仿朋友圈点赞评论操作面板

    目录 微信小程序-仿朋友圈点赞评论操作面板 一.效果 二.实现 1.wxml实现 2.js实现 3.wxss实现 三.记录 1.dataset使用 微信小程序-仿朋友圈点赞评论操作面板 一.效果 二. ...

  9. Android笔记:触摸事件的分析与总结----多点触控

       其他相关博文:    Android笔记:触摸事件的分析与总结----MotionEvent对象    Android笔记:触摸事件的分析与总结----TouchEvent处理机制     An ...

最新文章

  1. 基于Python实现图画转换字符画
  2. 大数据和人工智能的关系,超全解析
  3. php文件域的作用,PHP作用域和文件夹操作示例
  4. CF1251F-Red-White Fence【NTT】
  5. 海信空调拥抱变革 扎实技术+多样产品组合引爆市场
  6. Android 使用gradle版本冲突
  7. 错误记录(二)java.lang.NoSuchMethodError: antlr.collections.AST.getLine()I错误时的原因及解决办法
  8. 【翻译】优秀网站的10个技巧
  9. 22. Magento 创建新闻模块(3)
  10. mysql添加多字段唯一索引吗_mysql多字段唯一索引
  11. 求解逆矩阵的常用三种方法
  12. 2019年云计算发展趋势如何 怎么加入云计算行业
  13. R 计算变量之间的相关性
  14. 如何在InfoPath2007中接受URL参数
  15. 《区块链 Web3.0程序该跑在哪里?》 国盛证券
  16. 带你玩转kubernetes-k8s(第61篇-Kubernetes之资源紧缺时的Pod驱逐机制)
  17. 资深摄影师眼中,青岛值得一游的景点有哪些?
  18. 爪哇国新游记之三十二----邮件发送
  19. 连接远程电脑虚拟机时,怎样重启远程电脑?
  20. excel怎么设置打印区域_Excel如何设置打印区域及打印区域如何调整

热门文章

  1. 804. 唯一摩尔斯密码词-ruby解法
  2. 原生js实现查看图片效果
  3. Android P禁止http明文传输
  4. 导入微信小程序显示未选择环境或未指定环境,解决办法
  5. 《红豆——我的母亲》
  6. Elasticsearch7.x DSL语法之查询
  7. 自考java填空题_java 自考题目
  8. 经常使用下载工具与编程书籍
  9. python后端判断手机号是否注册过
  10. YOLOv5/v7 应用轻量级通用上采样算子CARAFE