解决微信浏览器Javascript无法使用window.location.reload()刷新页面


Posted in Javascript onJune 21, 2016

场景是这样子的,页面在初始化时有一个ajax请求,在页面上有一个按钮,点击的时候执行window.location.reload(),正常情况reload()后页面依然会向后台发出请求,但在安卓的微信浏览器中reoad后请求的一直是第一次打开页面时请求的数据。可以理解为请求被缓存了,但没有实测,也不知道是否是缓存。

解决方法是,使用window.location.href="window.location.href+随机数" 代替 window.location.reload()。切记,一定要加随机数,否则一样不会起作用。当然也可以用一个a标签,然后设置href="window.location.href + 随机数"。

再进一步的话可以只针对微信浏览器作此设置,那么就得判断是否微信浏览器。可以通过window.navigator.userAgent进行判断,结果是,Mozilla/5.0 (iPhone; CPU iPhone OS 9_3_2 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Mobile/13F69 MicroMessenger/6.3.16。根据关键字 MicroMessenger 来判断是否是微信内置的浏览器。判断函数如下

function isWeiXin(){
 var ua = window.navigator.userAgent.toLowerCase();
 if(ua.match(/MicroMessenger/i) == 'micromessenger'){
  return true;
 }else{
  return false;
 }
}

以上就是本文的全部内容,了解更多JavaScript的语法,大家可以查看:《JavaScript 参考教程》、《JavaScript代码风格指南》,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript基于AJAX回调函数传递参数实例分析
Dec 15 Javascript
js时间戳转为日期格式的方法
Dec 28 Javascript
第七章之菜单按钮图标组件
Apr 25 Javascript
jQuery Ajax使用FormData对象上传文件的方法
Sep 07 Javascript
AngularJS自定义插件实现网站用户引导功能示例
Nov 07 Javascript
bootstrap模态框垂直居中效果
Dec 03 Javascript
关于axios不能使用Vue.use()浅析
Jan 12 Javascript
Vue中CSS动画原理的实现
Feb 13 Javascript
vue插件mescroll.js实现移动端上拉加载和下拉刷新
Mar 07 Javascript
JavaScript显式数据类型转换详解
Mar 18 Javascript
vue通过video.js解决m3u8视频播放格式的方法
Jul 30 Javascript
vue 解决setTimeOut和setInterval函数无效报错的问题
Jul 30 Javascript
JS基于构造函数实现的菜单滑动显隐效果【测试可用】
Jun 21 #Javascript
Bootstrap中的表单验证插件bootstrapValidator使用方法整理(推荐)
Jun 21 #Javascript
关于JS中setTimeout()无法调用带参函数问题的解决方法
Jun 21 #Javascript
原生JS封装ajax 传json,str,excel文件上传提交表单(推荐)
Jun 21 #Javascript
jQuery动态添加可拖动元素完整实例(附demo源码下载)
Jun 21 #Javascript
带有定位当前位置的百度地图前端web api实例代码
Jun 21 #Javascript
jQuery中的ready函数与window.onload谁先执行
Jun 21 #Javascript
You might like
数字转英文
2006/12/06 PHP
PHP autoload与spl_autoload自动加载机制的深入理解
2013/06/05 PHP
解析argc argv在php中的应用
2013/06/24 PHP
原生javascript实现图片轮播效果代码
2010/09/03 Javascript
jquery foreach使用示例
2013/09/12 Javascript
只需一行代码,轻松实现一个在线编辑器
2013/11/12 Javascript
JavaScript优化专题之Loading and Execution加载和运行
2016/01/20 Javascript
jQuery获取多种input值的简单实现方法
2016/06/20 Javascript
JavaScript中自带的 reduce()方法使用示例详解
2016/08/10 Javascript
BootStrap与Select2使用小结
2017/02/17 Javascript
Vue2.0 多 Tab切换组件的封装实例
2017/07/28 Javascript
浅谈Vue服务端渲染框架Nuxt的那些事
2018/12/21 Javascript
fastadmin中调用js的方法
2019/05/14 Javascript
webpack 代码分离优化快速指北
2019/05/18 Javascript
解决VUE项目localhost端口服务器拒绝连接,只能用127.0.0.1的问题
2020/08/14 Javascript
JavaScript 实现轮播图特效的示例
2020/11/05 Javascript
原生JS实现音乐播放器
2021/01/26 Javascript
[54:18]DOTA2-DPC中国联赛 正赛 PSG.LGD vs LBZS BO3 第一场 1月22日
2021/03/11 DOTA
python输出当前目录下index.html文件路径的方法
2015/04/28 Python
Python对象转JSON字符串的方法
2016/04/27 Python
Python在信息学竞赛中的运用及Python的基本用法(详解)
2017/08/15 Python
python url 参数修改方法
2018/12/26 Python
详解python列表(list)的使用技巧及高级操作
2019/08/15 Python
教师评优的个人自我评价分享
2013/09/19 职场文书
会计找工作求职信范文
2013/12/09 职场文书
服务标兵事迹材料
2014/05/04 职场文书
村干部四风问题整改措施
2014/09/30 职场文书
三提三创主题教育活动查摆整改措施
2014/10/25 职场文书
病人写给医生的感谢信
2015/01/23 职场文书
团队执行力培训心得体会
2015/08/15 职场文书
党校团干班培训心得体会
2016/01/06 职场文书
2019年消防宣传标语集锦
2019/11/21 职场文书
Django REST framework 限流功能的使用
2021/06/24 Python
万能密码的SQL注入漏洞其PHP环境搭建及防御手段
2021/09/04 SQL Server
bootstrapv4轮播图去除两侧阴影及线框的方法
2022/02/15 HTML / CSS
Android 中的类文件和类加载器详情
2022/06/05 Java/Android