苹果ios系统用history.back()返回上一页不刷新页面空白问题解决方法

很多朋友在制作网站页面时发现,有时候页面的返回上一页按钮使用onclick="javascript:history.back();"时在苹果iOS上会出现返回上一页后页面并没有刷新,当页面使用swiper插件切换页面,返回跳转其他页面还会出现页面空白现象。遇到这样的问题应该如何解决呢?可以通过在页面加上以下代码:

<script>
	window.onpageshow = function(event) {
		if (event.persisted || window.performance &&
			window.performance.navigation.type == 2) {
			window.location.reload();
		}
	}
</script>


通过上面代码就可以实现返回上一页会自动刷新页面了,但是不够完美的地方是安卓打开会多刷新一次看着很难受。难就可以再改造下,判断下,如果是ios再执行,代码如下:

<script>
       //判断是否为ios系统
	function isIOS(){
		var u = navigator.userAgent;
		var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
		return isiOS;
	}
	if(isIOS()){
		window.onpageshow = function(event) {
			if (event.persisted || window.performance &&
				window.performance.navigation.type == 2) {
				window.location.reload();
			}
		}
	}
</script>	


通过上面代码就可以完美解决iOS使用history.back()返回上一页不刷新页面和空白的问题啦。

如果内容有帮助,就点个赞吧!

转载注明出处:http://www.12564.cn/show-257.html

如有疑问请联系 QQ:644233191   微信:zw1688k