微信小程序实现手势滑动效果


Posted in Javascript onAugust 26, 2019

本文实例为大家分享了微信小程序实现手势滑动的具体代码,供大家参考,具体内容如下

wxml:

<view 
bindtouchstart="touchStart" 
bindtouchmove="touchMove" 
bindtouchend="touchEnd" >
</view>

index.js:

var touchStartX = 0;//触摸时的原点 
var touchStartY = 0;//触摸时的原点 
var time = 0;// 时间记录,用于滑动时且时间小于1s则执行左右滑动 
var interval = "";// 记录/清理时间记录 
var touchMoveX = 0; // x轴方向移动的距离
var touchMoveY = 0; // y轴方向移动的距离

Page({

// 触摸开始事件 
 touchStart: function (e) {
 touchStartX = e.touches[0].pageX; // 获取触摸时的原点 
 touchStartY = e.touches[0].pageY; // 获取触摸时的原点 
 // 使用js计时器记录时间 
 interval = setInterval(function () {
  time++;
 }, 100);
 },
 // 触摸移动事件 
 touchMove: function (e) {
 touchMoveX = e.touches[0].pageX;
 touchMoveY = e.touches[0].pageY;
 },
 // 触摸结束事件 
 touchEnd: function (e) {
 var moveX = touchMoveX - touchStartX
 var moveY = touchMoveY - touchStartY
 if (Math.sign(moveX) == -1) {
  moveX = moveX * -1
 }
 if (Math.sign(moveY) == -1) {
  moveY = moveY * -1
 }
 if (moveX <= moveY) {// 上下
  // 向上滑动
  if (touchMoveY - touchStartY <= -30 && time < 10) {
  console.log("向上滑动")
  }
  // 向下滑动 
  if (touchMoveY - touchStartY >= 30 && time < 10) {
  console.log('向下滑动 ');
  }
 }else {// 左右
  // 向左滑动
  if (touchMoveX - touchStartX <= -30 && time < 10) {
  console.log("左滑页面")
  }
  // 向右滑动 
  if (touchMoveX - touchStartX >= 30 && time < 10) {
  console.log('向右滑动');
  }
 }
 clearInterval(interval); // 清除setInterval 
 time = 0;
 }, 
})

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JS判定是否原生方法
Jul 22 Javascript
jQuery向上遍历DOM树之parents(),parent(),closest()之间的区别
Dec 02 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
Dec 16 Javascript
用js来刷新当前页面保留参数的具体实现
Dec 23 Javascript
JavaScript函数详解
Feb 27 Javascript
JS实现队列与堆栈的方法
Apr 21 Javascript
Angular.JS中指令ng-if、ng-show/ng-hide和ng-switch的使用教程
May 07 Javascript
webpack开发跨域问题解决办法
Aug 03 Javascript
浅析webpack 如何优雅的使用tree-shaking(摇树优化)
Aug 16 Javascript
AngularJS实现表单元素值绑定操作示例
Oct 11 Javascript
js操作两个json数组合并、去重,以及删除某一项元素
Sep 22 Javascript
Vue实现下拉加载更多
May 09 Vue.js
详解nuxt 微信公众号支付遇到的问题与解决
Aug 26 #Javascript
Vue路由之JWT身份认证的实现方法
Aug 26 #Javascript
Vue中跨域及打包部署到nginx跨域设置方法
Aug 26 #Javascript
js实现跟随鼠标移动的小球
Aug 26 #Javascript
vue 源码解析之虚拟Dom-render
Aug 26 #Javascript
Node.js爬虫如何获取天气和每日问候详解
Aug 26 #Javascript
vue移动端实现手机左右滑动入场动画
Jun 17 #Javascript
You might like
PHP4之COOKIE支持详解
2006/10/09 PHP
PHP封装的数据库模型Model类完整示例【基于PDO】
2019/03/14 PHP
asp.net和php的区别点总结
2019/10/10 PHP
js 未结束的字符串常量错误解决方法
2010/06/13 Javascript
JQuery select控件的相关操作实现代码
2012/09/14 Javascript
用nodejs写的一个简单项目打包工具
2013/05/11 NodeJs
删除节点的jquery代码
2014/01/13 Javascript
AngularJS 日期格式化详解
2015/12/23 Javascript
基于JQuery实现图片轮播效果(焦点图)
2016/02/02 Javascript
基于原生js淡入淡出函数封装(兼容IE)
2016/10/20 Javascript
微信小程序购物商城系统开发系列-工具篇的介绍
2016/11/21 Javascript
NodeJS仿WebApi路由示例
2017/02/28 NodeJs
jQuery中extend函数简单用法示例
2017/10/11 jQuery
图解javascript作用域链
2019/05/27 Javascript
layer 关闭指定弹出层的例子
2019/09/25 Javascript
Javascript中的this,bind和that使用实例
2019/12/05 Javascript
JavaScript canvas实现跟随鼠标事件
2020/02/10 Javascript
JQuery获得内容和属性方法解析
2020/05/30 jQuery
react ant Design手动设置表单的值操作
2020/10/31 Javascript
Python脚本获取操作系统版本信息
2016/12/17 Python
python版本坑:md5例子(python2与python3中md5区别)
2017/06/20 Python
python 统计列表中不同元素的数量方法
2018/06/29 Python
Python发送邮件测试报告操作实例详解
2018/12/08 Python
Python中的 enum 模块源码详析
2019/01/09 Python
Python for循环搭配else常见问题解决
2020/02/11 Python
全球最大的在线旅游公司:Expedia
2017/11/16 全球购物
Java平台和其他软件平台有什么不同
2015/06/05 面试题
满月酒答谢词
2014/01/14 职场文书
人事专员的岗位职责
2014/03/01 职场文书
护士找工作求职信
2014/07/02 职场文书
2015财务年度工作总结范文
2015/05/04 职场文书
班主任开场白
2015/06/01 职场文书
2015年财务人员个人工作总结
2015/07/27 职场文书
Python带你从浅入深探究Tuple(基础篇)
2021/05/15 Python
Python图片处理之图片裁剪教程
2021/05/27 Python
spring IOC容器的Bean管理XML自动装配过程
2022/05/30 Java/Android