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


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 相关文章推荐
jQuery 对象中的类数组操作
Apr 27 Javascript
javascript 去字符串空格终极版(支持utf8)
Nov 14 Javascript
元素的内联事件处理函数的特殊作用域在各浏览器中存在差异
Jan 12 Javascript
再谈javascript面向对象编程
Mar 18 Javascript
使用jQuery加载html页面到指定的div实现方法
Jul 13 Javascript
JS中使用 after 伪类清除浮动实例
Mar 01 Javascript
Bootstrap 树控件使用经验分享(图文解说)
Nov 06 Javascript
微信小程序实现tab切换效果
Nov 21 Javascript
webpack4.0打包优化策略整理小结
Mar 30 Javascript
jQuery实现侧边栏隐藏与显示的方法详解
Dec 22 jQuery
简单了解vue中父子组件如何相互传递值(基础向)
Jul 12 Javascript
JS校验与最终登陆界面功能完整示例
Jan 13 Javascript
详解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
PHP+APACHE实现用户论证的方法
2006/10/09 PHP
检测png图片是否完整的php代码
2010/09/06 PHP
PHP中删除变量时unset()和null的区别分析
2011/01/27 PHP
Codeigniter中禁止A Database Error Occurred错误提示的方法
2014/06/12 PHP
php中隐形字符65279(utf-8的BOM头)问题
2014/08/16 PHP
Ajax PHP JavaScript MySQL实现简易无刷新在线聊天室
2016/08/17 PHP
php+redis实现多台服务器内网存储session并读取示例
2017/01/12 PHP
PHP tp5中使用原生sql查询代码实例
2020/10/28 PHP
通过JS动态创建一个html DOM元素并显示
2014/10/15 Javascript
javascript编写贪吃蛇游戏
2015/07/07 Javascript
Javascript验证Visa和MasterCard信用卡号的方法
2015/07/27 Javascript
分享有关jQuery中animate、slide、fade等动画的连续触发、滞后反复执行的bug
2016/01/10 Javascript
AngularJS基于factory创建自定义服务的方法详解
2017/05/25 Javascript
jquery对table做排序操作的实例演示
2017/08/10 jQuery
javaScript产生随机数的用法小结
2018/04/21 Javascript
react配合antd组件实现的管理系统示例代码
2018/04/24 Javascript
vue单页面在微信下只能分享落地页的解决方案
2019/04/15 Javascript
微信小程序实现翻牌抽奖动画
2020/09/21 Javascript
python文件操作之目录遍历实例分析
2015/05/20 Python
Python的多态性实例分析
2015/07/07 Python
python3 模拟登录v2ex实例讲解
2017/07/13 Python
python实现分页效果
2017/10/25 Python
解决安装tensorflow遇到无法卸载numpy 1.8.0rc1的问题
2018/06/13 Python
python连接mongodb密码认证实例
2018/10/16 Python
Python3利用print输出带颜色的彩色字体示例代码
2019/04/08 Python
python实现连续变量最优分箱详解--CART算法
2019/11/22 Python
python中os.remove()用法及注意事项
2021/01/31 Python
html5 offlline 缓存使用示例
2013/06/24 HTML / CSS
Ellesse英国官网:意大利高级运动品牌
2019/07/23 全球购物
优秀中专生推荐信
2013/11/17 职场文书
毕业生自荐信
2013/12/14 职场文书
学期研究性学习个人的自我评价
2014/01/09 职场文书
表决心的诗句大全
2014/03/11 职场文书
销售竞赛活动方案
2014/08/23 职场文书
2015年城市管理工作总结
2015/05/23 职场文书
uniapp引入支付宝原生扫码插件步骤详解
2022/07/23 Javascript