微信小程序 页面滑动事件的实例详解


Posted in Javascript onOctober 12, 2017

微信小程序——页面滑动事件

wxml:

<view id="id" class = "ball" bindtap = "handletap" bindtouchstart = "handletouchtart" bindtouchmove="handletouchmove" bindtouchend="handletouchend" style = "width : 100%px; height : 40px;">
 {{text}}
 </view>

wxss:

.ball {
  box-shadow:2px 2px 10px #AAA;
  border-radius: 20px;
  position: absolute; 
 }

js:

//js
Page({
 data: {
  lastX: 0,     //滑动开始x轴位置
  lastY: 0,     //滑动开始y轴位置
  text: "没有滑动",
  currentGesture: 0, //标识手势
 },
 //滑动移动事件
 handletouchmove: function (event) {
  var currentX = event.touches[0].pageX
  var currentY = event.touches[0].pageY
  var tx = currentX - this.data.lastX
  var ty = currentY - this.data.lastY
  var 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 = currentX
  this.data.lastY = currentY
  this.setData({
   text: text,
  });
 },

 //滑动开始事件
 handletouchtart: function (event) {
  this.data.lastX = event.touches[0].pageX
  this.data.lastY = event.touches[0].pageY
 },
 //滑动结束事件
 handletouchend: function (event) {
  this.data.currentGesture = 0;
  this.setData({
   text: "没有滑动",
  });
 },
})

如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
JavaScript中的变量定义与储存介绍
Dec 31 Javascript
整理Javascript基础语法学习笔记
Nov 29 Javascript
JQuery的常用选择器、过滤器、方法全面介绍
May 25 Javascript
AngularJs bootstrap搭载前台框架——基础页面
Sep 01 Javascript
webpack配置sass模块的加载的方法
Jul 30 Javascript
浅谈vue的iview列表table render函数设置DOM属性值的方法
Sep 30 Javascript
微信小程序实现获取自己所处位置的经纬度坐标功能示例
Nov 30 Javascript
JavaScript多线程运行库Nexus.js详解
Dec 22 Javascript
Angular入口组件(entry component)与声明式组件的区别详解
Apr 09 Javascript
Javascript Promise用法详解
May 10 Javascript
Angular中innerHTML标签的样式不起作用的原因解析
Jun 18 Javascript
react实现移动端下拉菜单的示例代码
Jan 16 Javascript
微信小程序 动画的简单实例
Oct 12 #Javascript
node通过npm写一个cli命令行工具
Oct 12 #Javascript
JS实现自定义状态栏动画文字效果示例
Oct 12 #Javascript
AngularJS实现表单验证功能详解
Oct 12 #Javascript
vue mintui-Loadmore结合实现下拉刷新和上拉加载示例
Oct 12 #Javascript
AngularJS 中的数据源的循环输出
Oct 12 #Javascript
详解微信小程序中的页面代码中的模板的封装
Oct 12 #Javascript
You might like
一个简单的自动发送邮件系统(二)
2006/10/09 PHP
php二分法在IP地址查询中的应用
2008/08/12 PHP
PHP7标量类型declare用法实例分析
2016/09/26 PHP
PHP获取文件扩展名的常用方法小结【五种方式】
2018/04/27 PHP
理解Javascript_05_原型继承原理
2010/10/13 Javascript
使用jquery选择器如何获取父级元素、同级元素、子元素
2014/05/14 Javascript
使用nodejs、Python写的一个简易HTTP静态文件服务器
2014/07/18 NodeJs
浅谈javascript的分号的使用
2015/05/12 Javascript
浅析JavaScript中的变量复制、参数传递和作用域链
2016/01/13 Javascript
AngularJS 视图详解及示例代码
2016/08/17 Javascript
AngularJS 执行流程详细介绍
2016/08/18 Javascript
AngularJS  $on、$emit和$broadcast的使用
2016/09/05 Javascript
vue实现可增删查改的成绩单
2016/10/27 Javascript
微信小程序分享功能onShareAppMessage(options)用法分析
2019/04/24 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
Python计算程序运行时间的方法
2014/12/13 Python
pandas 使用apply同时处理两列数据的方法
2018/04/20 Python
解析Python的缩进规则的使用
2019/01/16 Python
pymongo中group by的操作方法教程
2019/03/22 Python
Python实现字典按key或者value进行排序操作示例【sorted】
2019/05/03 Python
python处理excel绘制雷达图
2019/10/18 Python
python生成器/yield协程/gevent写简单的图片下载器功能示例
2019/10/28 Python
canvas实现按住鼠标移动绘制出轨迹的示例代码
2018/02/05 HTML / CSS
美国最大的城市服装和运动鞋零售商:Jimmy Jazz
2016/11/19 全球购物
ESDlife健康生活易:身体检查预订、搜寻及比较
2019/05/10 全球购物
机电工程专业应届生求职信
2013/10/03 职场文书
先进班级集体事迹材料
2014/01/30 职场文书
工作态度检讨书
2014/02/11 职场文书
求职意向书范文
2014/04/01 职场文书
银行员工犯错检讨书
2014/09/16 职场文书
教师党员自我评议不足范文
2014/10/19 职场文书
2019邀请函格式及范文
2019/05/20 职场文书
Python 使用dict实现switch的操作
2021/04/07 Python
Python使用UDP实现720p视频传输的操作
2021/04/24 Python
Python实现视频中添加音频工具详解
2021/12/06 Python
Python字符串的转义字符
2022/04/07 Python