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


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 相关文章推荐
关于IE、Firefox、Opera页面呈现异同 写脚本很痛苦
Aug 28 Javascript
js 数值转换为3位逗号分隔的示例代码
Feb 19 Javascript
回车直接实现点击某按钮的效果即触发单击事件
Feb 27 Javascript
JS实现鼠标经过好友列表中的好友头像时显示资料卡的效果
Jul 02 Javascript
jQuery操作cookie方法实例教程
Nov 25 Javascript
微信小程序技巧之show内容展示,上传文件编码问题
Jan 23 Javascript
使用bootstrap-paginator.js 分页来进行ajax 异步分页请求示例
Mar 09 Javascript
vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
Mar 30 Javascript
BootStrap表单控件之文本域textarea
May 23 Javascript
用原生JS实现简单的多选框功能
Jun 12 Javascript
Angular封装搜索框组件操作示例
Apr 25 Javascript
vue@cli3项目模板怎么使用public目录下的静态文件
Jul 07 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
Uncaught exception com_exception with message Failed to create COM object
2012/01/11 PHP
PHP CURL获取返回值的方法
2014/05/04 PHP
PHP实现恶意DDOS攻击避免带宽占用问题方法
2015/05/27 PHP
PHP实现中国公民身份证号码有效性验证示例代码
2017/05/03 PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
2018/10/15 PHP
PHP实现微信小程序用户授权的工具类示例
2019/03/05 PHP
javascript 动态设置已知select的option的value值的代码
2009/12/16 Javascript
validator验证控件使用代码
2010/11/23 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
轻松创建nodejs服务器(6):作出响应
2014/12/18 NodeJs
nodejs简单实现中英文翻译
2015/05/04 NodeJs
在JSP中如何实现MD5加密的方法
2016/11/02 Javascript
手动初始化Angular的模块与控制器
2016/12/26 Javascript
jQuery实现的浮动层div浏览器居中显示效果
2017/02/03 Javascript
vue项目动态设置页面title及是否缓存页面的问题
2018/11/08 Javascript
js中的数组对象排序分析
2018/12/11 Javascript
在vue中使用vuex,修改state的值示例
2019/11/08 Javascript
js实现星星打分效果
2020/07/05 Javascript
[02:17]2016完美“圣”典风云人物:Sccc专访
2016/12/03 DOTA
python 自动提交和抓取网页
2009/07/13 Python
python入门教程之识别验证码
2017/03/04 Python
Python3 加密(hashlib和hmac)模块的实现
2017/11/23 Python
详解flask表单提交的两种方式
2018/07/21 Python
HTML 5 input placeholder 属性如何完美兼任ie
2014/05/12 HTML / CSS
SHEIN台湾:购买最新流行女装服饰
2019/05/18 全球购物
网络安全方面的面试题
2016/01/07 面试题
药物学专业学生的自我评价
2013/10/27 职场文书
单位未婚证明范本
2014/01/18 职场文书
经理管理专业毕业自荐书范文
2014/02/12 职场文书
新学期国旗下演讲稿
2014/05/08 职场文书
优秀家长事迹材料
2014/05/17 职场文书
黄山导游词
2015/01/31 职场文书
签字仪式主持词
2015/07/03 职场文书
Python还能这么玩之只用30行代码从excel提取个人值班表
2021/06/05 Python
python数字转对应中文的方法总结
2021/08/02 Python
Python 游戏大作炫酷机甲闯关游戏爆肝数千行代码实现案例进阶
2021/10/16 Python