当前位置: 首页 > news >正文

微信小程序监听手机系统自带的左右滑动返回事件

微信小程序返回的时候想直接返回首页,但是左滑是上一页,和navigateBack一样,所以就监听了一下,后来一想在页面卸载的时候也可以,还可以使用getCurrentPages()方法,拿到是一个数组,官方文档

<view class="container" bindtouchmove="handleTouchMove"><!-- 页面内容 -->
</view>
Page({data: {startX: 0, // 记录触摸开始时的X坐标endX: 0,  // 记录触摸结束时的X坐标},handleTouchMove: function(e) {if (e.touches.length == 1) {// 单指触摸,记录坐标var touch = e.touches[0];this.setData({endX: touch.clientX,});// 判断是否滑动到足够距离(例如10px),并且判断是左滑还是右滑if (Math.abs(this.data.endX - this.data.startX) > 10) {if (this.data.endX < this.data.startX) {console.log('右滑');} else {console.log('左滑');}// 重置起始坐标,以便进行下一次判断this.setData({startX: this.data.endX,endX: 0,});}}},// 你可以在这里添加触摸开始的事件处理,以记录起始坐标handleTouchStart: function(e) {if (e.touches.length == 1) {var touch = e.touches[0];this.setData({startX: touch.clientX,endX: 0,});}},// ... 其他页面逻辑
});

需要添加更多的逻辑来处理边界情况(如多点触摸、滑动距离的判断阈值等)。同时,由于触摸事件的频繁触发,可能还需要考虑性能优化和防抖/节流等技术。大致监听然后返回首页的。有好的建议可以留言。
还有一种办法就是直接在卸载页面onunload里面直接写跳转页面的方法.

相关文章:

  • Day47
  • 深度学习原理与Pytorch实战
  • LabVIEW与PLC通讯方式及比较
  • python selenium 打开网页
  • Unity解决报错:Execution failed for task ‘:unityLibrary:BuildIl2CppTask‘
  • 淘客返利平台的API设计与安全
  • 在postgrel中使用hints
  • 等保2.0安全计算环境解读
  • 【0299】Postgres内核之哈希表(Hash Tables)
  • FIO压测磁盘性能以及需要注意的问题
  • 下标引用操作符;函数调用操作符;结构成员访问操作符
  • MySQL-核心知识要点
  • 基于大语言模型的本地知识库问答(离线部署)
  • vue3开发过程中遇到的一些问题记录
  • C++ 彻底搞懂指针(1)
  • 【干货分享】SpringCloud微服务架构分布式组件如何共享session对象
  • 2018一半小结一波
  • CentOS从零开始部署Nodejs项目
  • ES6--对象的扩展
  • js写一个简单的选项卡
  • Mysql5.6主从复制
  • spring boot 整合mybatis 无法输出sql的问题
  • vue 个人积累(使用工具,组件)
  • 代理模式
  • 对超线程几个不同角度的解释
  • 基于Volley网络库实现加载多种网络图片(包括GIF动态图片、圆形图片、普通图片)...
  • 最简单的无缝轮播
  • 你学不懂C语言,是因为不懂编写C程序的7个步骤 ...
  • 如何用纯 CSS 创作一个菱形 loader 动画
  • 直播平台建设千万不要忘记流媒体服务器的存在 ...
  • ​sqlite3 --- SQLite 数据库 DB-API 2.0 接口模块​
  • # 深度解析 Socket 与 WebSocket:原理、区别与应用
  • #传输# #传输数据判断#
  • #前后端分离# 头条发布系统
  • #使用清华镜像源 安装/更新 指定版本tensorflow
  • (03)光刻——半导体电路的绘制
  • (3)STL算法之搜索
  • (定时器/计数器)中断系统(详解与使用)
  • (动手学习深度学习)第13章 计算机视觉---图像增广与微调
  • (二)WCF的Binding模型
  • (二十四)Flask之flask-session组件
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (利用IDEA+Maven)定制属于自己的jar包
  • (三十五)大数据实战——Superset可视化平台搭建
  • (五十)第 7 章 图(有向图的十字链表存储)
  • (原)本想说脏话,奈何已放下
  • (转载)Google Chrome调试JS
  • (轉貼) VS2005 快捷键 (初級) (.NET) (Visual Studio)
  • *setTimeout实现text输入在用户停顿时才调用事件!*
  • .gitattributes 文件
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。
  • .NET技术成长路线架构图
  • .Net面试题4
  • .NET设计模式(2):单件模式(Singleton Pattern)
  • .NET中GET与SET的用法