场景
mobile web 页面,有一个满屏的弹窗,点击浏览器返回按钮,关闭弹窗,会返回上一个页面。
需求:
当点击返回或者前进的时候页面不做跳转。
想法
方法一:在 popstate 事件触发后,能否阻止浏览器的跳转行为?
方法二:如果可以监听到浏览器是触发 back 或者 forward, 在popstate事件中做一下相反的back 或者 forward 就好了.
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
方法1,阻止默认不可能,你顶多在页面beforeunload 的时候弹个框提醒一下。
方法2,有点可行。你可以通过初始化页面的document.referrer 等信息知道来源页,然后再进行跳转。你要监听是否是
back 或者 forward来的,没那个可能吧。页面一刷新,你的js都被回收了。