混合开发监听安卓手机物理返回键

在用h5做混合开发过程中由于有个考试考试页面,中途不能退出,退出要添加确认操作,所以需要监听手机的返回操作,不让用户直接通过返回键返回
目前了解到混合开发中有两种方式监听。

方式一,监听popstate,用到的属性window.history

mounted () {// 挂载完成后,判断是否支持popstate,监听手机返回键if (window.history && window.history.pushState) {history.pushState(null, null, document.URL)window.addEventListener('popstate', this.goBack, false)}
},
destroyed () {// 页面销毁时,取消监听,否则其他vue路由页面也会被监听window.removeEventListener('popstate', this.goBack, false)
},
methods: {//处理业务逻辑goBack () {this.rrxShow = !this.rrxShow},
}

问题

popstate只是能监听到手机返回操作,但是不会拦截后续操作,比如反复触发返回,控制确认框显隐,需要自己去写业务逻辑处理,并且需要移除监听再添加监听,不然影响其他页面的返回操作,有可能其他页面返回几次都无法返回。
好处是不用引用其他插件,只要做好逻辑控,还是挺好用的。

方式二,监听backbutton,cordova+vue,需要依赖cordova

不需要担心监听失效,直接在回调函数写相应方法即可,记得在页面销毁和取消操作后移除监听即可

 mounted () {document.addEventListener('backbutton', this.goBack,false)},destroyed () {// 页面销毁时,取消监听document.removeEventListener('backbutton', this.goBack,false)},methods:{goBack () {this.show = !this.show},}

混合开发监听安卓手机物理返回键相关推荐

  1. unity调用安卓手机物理返回键和home键

    使用unity制作游戏时,有时候需要在游戏中触发手机的物理返回键和home键,下面在update方法中每帧监听是否按下了该键,然后写入自己要调用的方法 using System.Collections ...

  2. 控制安卓手机物理返回键

    <script>  // 控制手机物理键--返回 window.onload = function(){   if(window.history && window.his ...

  3. H5中 JS 禁用安卓手机物理返回键 , 微信浏览器中也支持

    XBack = {};       (function(XBack) {         XBack.STATE = 'x - back';         XBack.element;        ...

  4. 移动端监听安卓手机返回键

    [场景] 相信大家用安卓手机使用APP的过程中,会遇到这样的一个场景:按下手机的返回键时,会弹出一个询问框:"是否退出该页面/APP?",然后点击了确认键才真正退出APP.PC端目 ...

  5. 移动端监听安卓手机返回键 1

    [场景] 相信大家用安卓手机使用APP的过程中,会遇到这样的一个场景:按下手机的返回键时,会弹出一个询问框:"是否退出该页面/APP?",然后点击了确认键才真正退出APP.PC端目 ...

  6. JavaScript监听手机物理返回键的两种解决方法

    JavaScript监听手机物理返回键的两种解决方法 参考文章: (1)JavaScript监听手机物理返回键的两种解决方法 (2)https://www.cnblogs.com/xzzzys/p/8 ...

  7. uniapp踩坑(五):监听手机物理返回键和滑动返回事件

    需求 android端和ios端点击手机物理返回键(左上角的)或页面滑动键退出后,弹出弹框,点击确定后才退出该页面. 截图展示: 实现代码: 在onBackPress()方法中实现. 注意一定要在su ...

  8. 如何无缝监听安卓手机通知栏推送信息以及拒接来电

    作者:咕咚移动技术团队-乔瑟琳 一.监听安卓手机通知栏推送信息 最近在需求中需要实现监听安卓手机通知栏信息的功能,比如实时获取qq.微信.短信消息.一开始评估是件挺简单的事儿,实现 Notificat ...

  9. 通过手机物理返回键实现弹出层的隐藏

    通过手机物理返回键实现弹出层的隐藏 <template><div class="popup"><h1 @click="popup" ...

最新文章

  1. beautifulsoup以及正则表达式re之间的一些知识!
  2. Uptime Tier Ⅳ标准数据中心的柴发油路设计关键点
  3. 白话SpringCloud | 第五章:服务容错保护(Hystrix)
  4. 推荐系统炼丹笔记:阿里边缘计算+奉送20个推荐系统强特
  5. day13-(事务mvc反射补充)
  6. Java将map置空_Java实现过滤掉map集合中key或value为空的值示例
  7. Spring注解——使用@ComponentScan自动扫描组件
  8. gulp通过http-proxy-middleware开启反向代理,实现跨域
  9. 宝马无法gps定位_2.0T+后驱,豪华品牌论运动还得看它,带你看宝马3系
  10. lua 给userdata设置元表_提高Lua语言开发效率的简单方法
  11. VB:读取及设定NumLock/CapsLock/ScrollLock的值
  12. c语言 struct 的初始化
  13. QBXT Day 4 数学,数论
  14. 【STM32H7】第10章 ThreadX GUIX移植到STM32H7(GCC)
  15. C语言 简单走迷宫小游戏
  16. 5.小程序的Ajax数据请求
  17. python字典进行大写转化_python 字符串转大写_Python字符串大写()
  18. POJ 1723 士兵排队 C语言实现
  19. 成为职业游戏建模师有没有前景,未来自己该如何发展学习
  20. 未来,什么样的程序员才是不可替代的?

热门文章

  1. 推荐几个常用的RapidShare搜索引擎
  2. MySql MediumBlob——MySql的Bolb四种类型
  3. YY一下,看到美女换裤子
  4. 美国战机F-22空中宕机迷思
  5. win10 下tomcat 启动startup.bat闪退解决方法
  6. 雷凌无线usb网卡驱动官方版
  7. XmlDocument类的常见使用
  8. scrollTop 用法讲解
  9. 一百元打造属于自己的健身房,还去什么健身房?
  10. windows——网络负载平衡(NLB)