在开发的H5页⾯的时候,发现ISO的内置浏览器后退不刷新了,然⽽业务实现需要刷新。
IOS上的内置浏览器为了优化⽤户体验,采⽤了后退不刷新的策略,也就是A页⾯打开B页⾯,B页⾯后退到A页⾯的时候,A页⾯不刷新(连JS都不执⾏)。
可以理解成A页⾯打开B页⾯的时候,A页⾯被隐藏了,后退的时候只是把A页⾯显⽰出来了。
这种情况禁缓存是没有效果的,可以通过监听onpageshow来刷新页⾯。
代码如下,在A页⾯的JS中添加
连不上网//解决IOSwebview后退不执⾏JS的问题
if (event.persisted) {
load();
}
};
event.persisted为了查看页⾯是直接从服务器上载⼊还是从缓存中读取的。
发布评论