js返回多级页面不生效

JavaScript013

js返回多级页面不生效,第1张

js返回多级页面不生效:

五分钟 页面逻辑:页面中存在另一个链接,通过链接跳转页面,在点击浏览器导航回退时。发现上级页面会不执行js操作(页面不会重新加载,会直接读取浏览器缓存)

展现结果:返回后页面不刷新,一些失效的信息依然显示在页面上

机型:这个问题会在iphone和部分android内置浏览器(vivo nex内置浏览器、华为荣耀手机)发生。

产出原因:这一切都是页面的缓存数据搞的鬼。什么是页面的缓存数据?浏览器的“往返缓存(back-forward cache - bfcache)”特性。简写是bfcache。这个是firfox提出的叫做"往返缓存"的一种缓存机制,用来加快用户在点击浏览器前进或者后退按钮时的速度。chrome放弃了bfcache,但是ios(webkit)的微信浏览器和safari

方法一:直接返回

可以用一个按钮.

<input id="Button2" type="button" value="返回" onclick="history.back(-1)"/>

方法二:提示跳转

Response.Write("<script language=javascript>alert('注册成功,请登陆!')this.top.location.href='"&urlgo&"'</script>")