JS监听手机返回键

JS监听手机返回键,需要用些前端的“奇技淫巧”。

核心代码如下:

if (window.history && window.history.pushState) { $(window).on(‘popstate‘, function() { var hashLocation = location.hash; var hashSplit = hashLocation.split("#!/"); var hashName = hashSplit[1];  if (hashName !== ‘‘) { var hash = window.location.hash; if (hash === ‘‘) { alert(‘後退按鈕點擊‘); } } }); window.history.pushState(‘forward‘, null, ‘./#forward‘); }

一个简单的demo,大家可以看看:

测试demo

时间: 2024-10-05 22:23:53

JS监听手机返回键的相关文章

使用ionic开发时用遇到监听手机返回按钮的问题~

当时用的是ionic开发一个app,需求是,当按下手机的返回按钮,在指定的页面双击退出,而在其他页面点击一次返回到上个页面: 其实用ionic自带的服务就可以解决:  //双击退出   $ionicPlatform.registerBackButtonAction(function (e) {   //判断处于哪个页面时双击退出    if($location.path() =='/message' || $location.path() =='/work' || $location.path(

vue+hbuilder监听安卓返回键问题

1.监听安卓返回键问题 效果:在一级页面按一下返回键提示退出应用,按两下退出应用;在其它页面中,按一下返回上个历史页面 1 2 import mui from './assets/js/mui.min.js' Vue.prototype.$mui = mui; 在一级页面mounted时 1 this.$mui.plusReady( () =>{ 2 var backcount = 0; 3 this.$mui.back = ()=> { 4 if (this.$mui.os.ios) ret

监听 手机back键和顶部的回退

// 回退事件,监听 手机back键和顶部的回退 pushHistory(); window.addEventListener("popstate", function(e) { window.location = '/index.php?m=mobile&c=slimmessage&a=slimsilkbag'; }, false); function pushHistory() { var state = { title: "title", ur

监听浏览器返回键、后退、上一页事件(popstate)操作返回键

在WebApp或浏览器中,会有点击返回.后退.上一页等按钮实现自己的关闭页面.调整到指定页面.确认离开页面或执行一些其它操作的需求.可以使用 popstate 事件进行监听返回.后退.上一页操作. 一.简单介绍 history 中的操作 1.window.history.back(),后退 2.window.history.forward(),前进 3.window.history.go(num),前进或后退指定数量历史记录 4.window.history.pushState(state, t

Android系统onKeyDown监控/拦截/监听/屏蔽返回键、菜单键和Home键

在Android系统中用来显示界面的组件(Component)为Activity,也就是说只有重写Activity的onKeyDown方法来监控/拦截/屏蔽系统的返回键(back).菜单键(Menu)及Home键. 1.拦截/屏蔽返回键.菜单键实现代码 @Overridepublic boolean onKeyDown(int keyCode, KeyEvent event) {    if(keyCode == KeyEvent.KEYCODE_BACK) { //监控/拦截/屏蔽返回键   

JS使用 popstate 事件监听物理返回键

pushHistory();        window.addEventListener("popstate", function (e) {            if (orderid != "") {                window.location.href = "/wap/self/orderinfo.aspx?id=" + orderid; //此处可改为任意地址            } else {         

(七)android 通知对话框,并且监听了返回键,当按下返回键也会创建一个对话框

一.activity_main.java中代码   1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layout_width="match_parent" 4 android:layout_height="matc

js 监听监键盘动作

主要分四个部分 第一部分:浏览器的按键事件 第二部分:兼容浏览器 第三部分:代码实现和优化 第四部分:总结 第一部分:浏览器的按键事件 用js实现键盘记录,要关注浏览器的三种按键事件类型,即keydown,keypress和keyup,它们分别对应onkeydown.  onkeypress和onkeyup这三个事件句柄.一个典型的按键会产生所有这三种事件,依次是keydown,keypress,然后是按键释放时 候的keyup.     在这3种事件类型中,keydown和keyup比较底层,

js监听input等表单输入框的变化事件oninput

js监听input等表单输入框的变化事件oninput,手机页面开发中使用到文本框textarea输入字符监听文本框变化计算还可以输入多少字符,如果使用onkeyup的话是无法监听到输入法输入的文本变化的,复制粘贴也不能监听到,于是就用到了oninput事件来监听文本框value值的改变.由于是手机端页面没有考虑IE 这货.过去一般都使用onchange/onkeyup/onkeypress/onkeydown实现,但是这存在着一些不好的用户体验.比如onchange事件只在键盘或者鼠标操作改变