javascript - js如何重定义手机上的back键?
PHP中文网
PHP中文网 2017-04-10 14:49:37
[JavaScript讨论组]

请在微信里访问这里

我用模态窗口实现了页面的效果,但是这样有一个问题,比如说点击左下角进入个人中心,有的人想要退回来可能就直接点后退键,这时候就直接退出网站了。

请教有没有办法能够针对所有手机重新定义后退键的含义??

PHP中文网
PHP中文网

认证高级PHP讲师

全部回复(2)
ringa_lee

LZ要不要返回功能?

如果是不要返回功能,那么微信有一个功能可以隐藏微信中网页底部导航栏,见这里

但安卓的返回按键没辙:

  • 没办法处理按键事件,返回按键触发回退是浏览器默认行为,不能在前端通过监测keydown之类的方式来阻止
  • 可以针对页面地址变化的形式监测hashchange和popstate,但这两个事件都是不可cancel的(ref)

但我感觉LZ做的是SPA/RIA,需要利用到地址变化和返回功能,这个时候就需要通过js制造历史记录,在合适的地方使用history接口的pushState、popState或replaceState吧。

如果是jQM,自然有pagechangebefore之类的托管事件用于处理历史记录。

大家讲道理

个人认为需要结合cookie或者loaclstorage来实现吧。
可以设置一个数组,存储的是访问过的页面地址,并按序推入数组,在进入下个页面的时候,js控制设置返回按钮所要返回的url。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号