扫码关注官方订阅号
移动端web开发,浏览器或微信浏览器,打开web页面后,如何监听用户触发了安卓手机物理返回键? 你们有用javascript实现过这个功能么?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
这是我修改后的监听事件代码:;!function(pkg, undefined){ //此声明函数在xback.js文件里有,在app.js里必须再声明一次,不然监听返回事件失败
var STATE = 'x-back'; var element; var onPopState = function(event){ event.state === STATE && fire(); record(STATE); //初始化事件时,push一下 } 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');
调用方法:XBack.listen(function(){
alert('oh! you press the back button');
});
如果说你的浏览有历史记录的话,点击返回其实就相当于点击浏览器回退键,然后这样的话你是可以通过监听hashchange 或者popstate事件来做处理,如果没有的话,那就无能为力了
没办法监听的
android物理返回键只能通过类似cordova提供的插件来监听,引入cordova后就可以监听backbutton事件了
document.addEventListener("backbutton", onBackKeyDown, false);
就是加历史记录,点击返回手机会自动处理,不要你监听。
关键词:
pagehide
persisted
移动端web开发,页面如何监听安卓手机物理返回键的回退事件?你最终是是怎么解决的呢? 这个代码完整的咋写的?
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
这是我修改后的监听事件代码:
;!function(pkg, undefined){ //此声明函数在xback.js文件里有,在app.js里必须再声明一次,不然监听返回事件失败
}('XBack');
调用方法:
XBack.listen(function(){
});
如果说你的浏览有历史记录的话,点击返回其实就相当于点击浏览器回退键,然后这样的话你是可以通过监听hashchange 或者popstate事件来做处理,如果没有的话,那就无能为力了
没办法监听的
android物理返回键只能通过类似cordova提供的插件来监听,引入cordova后就可以监听backbutton事件了
就是加历史记录,点击返回手机会自动处理,不要你监听。
关键词:
pagehide
persisted
移动端web开发,页面如何监听安卓手机物理返回键的回退事件?你最终是是怎么解决的呢? 这个代码完整的咋写的?