素材牛VIP会员
如何禁止回退
 ah***xr  分类:PHP代码  人气:999  回帖:3  发布于6年前 收藏

web网站在微信端登录之后,由于是post 登录,之后点击回退按钮(安卓),会出现上图效果
我要怎样才能防止这种情况?

 标签:javascriptphp

讨论这个帖子(3)垃圾回帖将一律封号处理……

Lv5 码农
迷***雾 软件测试工程师 6年前#1

试下这个,有一点点用。


$(function(){
        history.pushState({page : 'state1'},'state','#state1');
        history.pushState({page : 'state2'},'state','#state2');

        window.onpopstate = function(event) {
            if (event.state.page === 'state1') {
                WeixinJSBridge.call('closeWindow');
            }
        };
    })
    
Lv4 码徒
sh***ng 学生 6年前#2

浏览器理论上是不允许你禁止回退的。

但是有偏方,我说下思路:

history.pushState,可以添加浏览器的历史记录,你在进入页面的时候先pushState一个新页面(#hash),然后监听popstate事件。

页面修改了history,会触发popstate事件。触发时检测到url地址为刚进页面时的地址,就再pushState那个#hash。

浏览历史记录中会始终留下一个页面,后退按钮失效。

Lv6 码匠
雪***儿 职业无 6年前#3

javascript:window.history.forward(1);

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取