小程序监听屏幕滑动事件 - 新闻资讯 - 云南小程序开发|云南软件开发|云南网站建设-昆明葵宇信息科技有限公司

159-8711-8523

云南网建设/小程序开发/软件开发

知识

不管是网站,软件还是小程序,都要直接或间接能为您产生价值,我们在追求其视觉表现的同时,更侧重于功能的便捷,营销的便利,运营的高效,让网站成为营销工具,让软件能切实提升企业内部管理水平和效率。优秀的程序为后期升级提供便捷的支持!

您当前位置>首页 » 新闻资讯 » 小程序相关 >

小程序监听屏幕滑动事件

发表时间:2021-1-5

发布人:葵宇科技

浏览次数:41

小程序监听屏幕滑动事件

功能设计背景

  1. 小程序页面点击事件的坐标系是以左下角为原点的直角坐标系。
  2. 微信小程序提供bindtouchstartbindtouchend接口用于监听触点的变化。

功能实现

1.在你需要监听的块外增加监听遮罩层,包含待监听块在内

<view  bindtouchstart="touchStart" bindtouchend="touchEnd">
	
view>

2.根据触点的起始位置和终止位置计算滑动方向(在data中配置touchxtouchy数值)

    touchStart(e) {
      console.log(e)
      var that = this;
      that.setData({
        touchx: e.changedTouches[0].clientX,
        touchy: e.changedTouches[0].clientY
      })
    },
    touchEnd(e) {
      console.log(e)
      var that = this;
      let x = e.changedTouches[0].clientX;
      let y = e.changedTouches[0].clientY;
      let turn = "";
      if (x - that.data.touchx > 50 && Math.abs(y - that.data.touchy) < 50) {      //右滑
        turn = "right";
      } else if (x - that.data.touchx < -50 && Math.abs(y - that.data.touchy) < 50) {   //左滑
        turn = "left";
      }
      if(y - that.data.touchy > 50 && Math.abs(x - that.data.touchx) < 50){ //下滑
        turn = "down";
      }else if(y - that.data.touchy < -50 && Math.abs(x - that.data.touchx) < 50){ //上滑
        turn="up";
      }
      //根据方向进行操作
      if(turn == 'down'){
        //下滑触发操作
      }
    },

相关案例查看更多