这篇文章主要介绍了手机浏览器 后退按钮强制刷新页面方法总结的相关资料, 需要的朋友可以参考下
由于 A 界面的数据是通过 ajax 交互的,当你跳转到 B 界面,点击手机浏览器自带的后退回到 A 界面,由于缓存原因,读取到的数据不是最新的数据。
查了很多资料,看到网上的解决方法是清理缓存,然后页面重新向服务器发出请求。
下面整理一下,解决这个问题的方法。
方法 1,html 头部,禁止缓存:javascript
- <meta http-equiv="Expires" CONTENT="0">
- <meta http-equiv="Cache-Control" CONTENT="no-cache">
- <meta http-equiv="Pragma" CONTENT="no-cache">
注:(手机端)此方法行不通,因为有些浏览器会忽略这个头部,测试过,可能是我手机自带浏览器的原因。
方法 2,适用于 jsp
- Response.Buffer = True
- Response.ExpiresAbsolute = Now() - 1
- Response.Expires = 0
- Response.CacheControl = "no-cache"
注:此方法本人没有试过,不知道可不可行
方法三,强行刷新界面
- if(window.name != "bencalie"){
- location.reload();
- window.name = "bencalie";
- }else{
- window.name = "";
- }
注:此方法可行,此代码写在 js 里。
来源: http://www.phperz.com/article/17/0531/331364.html