https://blog.csdn.net/yang450712123/article/details/79276102

https://blog.csdn.net/Chengbin_Huang/article/details/80271029

https://blog.csdn.net/k491022087/article/details/76576406

ios 上浏览器返回上一页不会刷新页面问题,页面初始化的方法不执行
问题描述
在 ios 上浏览器返回上一页不会刷新页面问题,页面初始化的方法不执行,造成了很多意外情况,这个问题不能忍;

解决方案
方法一:hack方法,加入iframe强制刷新后,去除
function(title){
var u = navigator.userAgent;
var isIOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
document.title= title;//添加标题
if(isIOS){
// hack在IOS微信等webview中无法修改document.title的情况
var $iframe = $('<iframe src="/favicon.ico"></iframe>').on('load', function() {
setTimeout(function() {
$iframe.off('load').remove()
}, 0)
}).appendTo($('body'))
}
};
1
2
3
4
5
6
7
8
9
10
11
12
13
方法二:利用 onpageshow 事件触发:
window.onpageshow=function(e){
if(e.persisted) {
window.location.reload()
}
};
---------------------
作者:FE-阿阳
来源:CSDN
原文:https://blog.csdn.net/yang450712123/article/details/79276102
版权声明:本文为博主原创文章,转载请附上博文链接!

* pageshow只使用于ios10以上。

微信公众号开发时,在IOS系统下点击返回按钮,发现返回后的页面是没有经过刷新的,虽然这样是有好处,不用再重新请求页面数据,但是很多时候我们是需要重新去请求页面数据的。

首先我们需要监听手机的系统,然后在监听返回事件,当用户点击返回按钮后,将页面进行强制刷新,代码如下

var ua = navigator.userAgent;
if (ua.indexOf('iPhone') > -1) {//苹果手机
window.onload = function () {
setTimeout(() => {
window.addEventListener("popstate", function (e) {
// alert("我监听到了浏览器的返回按钮事件啦");
self.location = document.referrer;
});
}, 500)
}
}

popstate事件只会在浏览器某些行为下触发, 比如点击后退、前进按钮(或者在JavaScript中调用history.back()、history.forward()、history.go()方法)。当网页加载时,各浏览器对popstate事件是否触发有不同的表现,Chrome 和 Safari会触发popstate事件, 而Firefox不会,因此需要加一个定时器进行延迟,这样就不会因为页面刚一加载就出发popstate事件。

referrer 属性可返回载入当前文档的文档的 URL。
---------------------
作者:安静的对折
来源:CSDN
原文:https://blog.csdn.net/k491022087/article/details/76576406
版权声明:本文为博主原创文章,转载请附上博文链接!

ios 上浏览器返回上一页不会刷新页面问题,页面初始化的方法不执行的更多相关文章

  1. vue项目中阻止浏览器返回上一页

    vue项目中在某个页面阻止浏览器返回上一页,适用移动端.PC端. 使用场景例如: 首页 与 A页面     来回跳转,那样点击浏览器返回时也会来回跳转,本想当页面在首页的时候就不再返回了,所以这个时候 ...

  2. 不推荐在iOS的浏览器应用上使用click和mouseover

    iOS上的Safari也支持click 和mouseover等传统的交互事件,只是不推荐在iOS的浏览器应用上使用click和mouseover,因为这两个事件是为了支持鼠标点击而设计 出来的.Cli ...

  3. 类似IOS的滑动返回上一级,SwipeBackLayout-android的滑动返回类库

    最近,公司在开发App的需求中增加了一个新的需求,要在android的页面中增加向右滑动的时候返回上一级页面.我刚知道这个需求的时候,感觉有点坑,可能设计那边最近接触到知乎的客户端或者是IOS的滑动可 ...

  4. [moka同学收藏]网页上的“返回上一页”的几种实现代码

    我们在制作网页的时候,经常在网页上要用到"返回上一页"的功能.这一功能在制作网页的时候会有多种编码方法,在此,笔者将比较常用的几种编码写作方法在下面列出来,供各位技术人员参考使用. ...

  5. IOS 禁止侧滑返回上个页面功能

    1.首先把顶部左侧返回按钮隐藏掉 //隐藏返回按钮 self.navigationItem.hidesBackButton = YES; 2.1.再禁止页面左侧侧 //禁止页面左侧滑动返回,注意,如果 ...

  6. IOS微信浏览器返回事件监听问题

    业务需求:从主页进入A订单页面,然后经过各种刷新或点标签加载后点左上角的返回直接返回到主页 采取方法:采用onpopstate事件监听url改变,从而跳转到主页 遇到的问题:安卓上测试没问题:苹果手机 ...

  7. ios端浏览器拍照上传到服务器,图片被旋转90度 php 解决方案

    1.可以通过前端进行解决,本案例通过后端解决的 判断请求的浏览器的ua,如果是ios浏览器则进行90度旋转 重点来了: 必须确保检测的图片是ios设备上传的完整图片,不要在前端压缩过的,因为压缩后的图 ...

  8. 在CentOS 7 上设置返回上一级目录的快捷键为 Backspace

    参考这里. 编辑文件: $ vi ~/.config/nautilus/accels 找到这一行:  ; (gtk_accel_path "<Actions>/ShellActi ...

  9. javascript解决在safari浏览器中使用history.back()返回上一页后页面不会刷新的问题

    我们知道,在JavaScript中提供了一个window.history.back()方法用于返回上一页,另外也可以使用window.history.go(-1)返回上一页(跳转). 在其他的主流浏览 ...

随机推荐

  1. CSS(三)--自定义标签

    HTML代码 <body> <ul> <li>1</li> <li>2</li> </ul> </body&g ...

  2. Hibernate基础知识

    Hibernate Hibernate的作用: 1.         Hibernate解决ORM(对象关系映射)的问题,大大减少了持久层的代码量 2.         hql方言,解决了可移植性问题 ...

  3. flask-admin fileadmin 上传文件,中文名的解决方案 重写部分secure_filename

    class upload_view(FileAdmin): def _save_form_files(self, directory, path, form): super() filename = ...

  4. 使用MyEclipse开发Java EE应用:用XDoclet创建EJB 2 Session Bean项目(二)

    [MyEclipse最新版下载] 二.创建一个Session EJB – Part 1 MyEclipse中的EJB 2.x开发使用了EJB向导和集成XDoclet支持的组合. 每个EJB由三个基本部 ...

  5. 100Mbps和100MB/s

    作为毕业2年计算机专业的学生,现在才知道100Mbps和100MB/s的概念,实在是渣. Mbps=Mbit/s即兆比特每秒.Million bits per second的缩写传输速率是指设备的的数 ...

  6. 安装Android开发工具

    这两天开始学Android,首先要要解决的是安装编译器的问题,经过我这两天的探究,我把收获总结一下 最简单的编译器是ADT-bundle,它是一个集成的工具,里面有eclipse,也不需要下载SDK, ...

  7. Ajax 以及 前端JSP页面如何查看数值

    $.ajax({ url: ctx + "/unit/rsdl/qyjy/getDljgCode", type: "post", success: functi ...

  8. 20165214 实验二 Java面向对象程序设计

    一.实验报告封面 课程:Java程序设计 班级:1652班 姓名:朱文远 学号:20165214 指导教师:娄嘉鹏 实验日期:2018年4月16日 实验时间:13:45 - 15:25 实验序号:二 ...

  9. php优秀框架codeigniter学习系列——CI_Utf8类

    CI_Utf8类用来对Utf8编码环境提供支持.(Provides support for UTF-8 environments). 从构造函数看,只有当开启了PCRE模式,加载了iconv或者mbs ...

  10. 记一次给nginx的web服务器目录加软链接

    先期情况和问题 已安装好nginx服务器和相关配置.nginx的web目录是/usr/share/nginx/html. 现在的问题是希望把web目录换成/root/nginx/html/,但是不更改 ...