解决非chrome浏览器(移动端适用)后退刷新问题 (2017.08.29)
aermin opened this issue · 0 comments
aermin commented
写页面时你可能会遇到这个问题,就是用Firefox,Safari,IE等非chrome浏览器,点击浏览器自带的返回键会发现不会刷新页面,因为那时js代码没有执行。
新建完用户没有点击你写的返回按钮(图中的完成按钮),而是点击了浏览器自带的返回键
图片中的chrome浏览器只是当演示用,现实中请用非chrome的去感受这个问题
比如用firefox点击打开图片示例的网站链接
奉上代码
要刷新的页面(如页面A)
<script>
//chrome自带后退刷新,故不再次刷新
var ua = window.navigator.userAgent;
var isChrome = ua.indexOf("Chrome") && window.chrome;
if (! isChrome) {
//浏览器后退刷新
function reload() {
setInterval(function() { //这个定时器返回A页面会继续执行
if (localStorage.reload == 'true' ) { //判断是否刷新页面
localStorage.setItem('reload','false');
location.reload()
}
}, 500)
};
reload();
}
</script>
在A页面之后访问的页面(如页面B)添加一下一行代码
ps:作为A页面执行刷新功能的开关
localStorage.setItem('reload','true');