微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

JavaScript没有监听物理返回键的API,所以只能使用 popstate 事件监听。

有两个解决办法:

1、返回到指定的页面

rush:js;"> pushHistory(); window.addEventListener("popstate",function(e) { window.location = 'http://www.baidu.com'; },false); function pushHistory() { var state = { title: "title",url: "#" }; window.history.pushState(state,"title","#"); }

2、js文件方法

此声明函数在xback.js文件里有,在app.js里必须再声明一次,不然监听返回事件失败。

rush:js;"> /** * 使用 HTML5 的 History 新 API pushState 来曲线监听 Android 设备的返回按钮 * XBack.listen(function(){ alert('oh! you press the back button'); }); */ ;!function(pkg,undefined){ var STATE = 'x-back'; var element; var onPopState = function(event){ event.state === STATE && fire(); } var record = function(state){ history.pushState(state,null,location.href); } var fire = function(){ var event = document.createEvent('Events'); event.initEvent(STATE,false,false); element.dispatchEvent(event); } var listen = function(listener){ element.addEventListener(STATE,listener,false); } ;!function(){ element = document.createElement('span'); window.addEventListener('popstate',onPopState); this.listen = listen; record(STATE); }.call(window[pkg] = window[pkg] || {}); }('XBack');

调用方法

rush:js;"> XBack.listen(function(){ alert('back'); });

总结

以上所述是小编给大家介绍的JavaScript监听手机物理返回键的两种解决方法。编程之家 jb51.cc 收集整理的教程希望能对你有所帮助,如果觉得编程之家不错,可分享给好友!感谢支持

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐