解决微信浏览器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 相关文章推荐
jQuery控制图片的hover效果(smartRollover.js)
Mar 18 Javascript
Javascript中的for in循环和hasOwnProperty结合使用
Jun 05 Javascript
JavaScript中的ArrayBuffer详细介绍
Dec 08 Javascript
js 实现一些跨浏览器的事件方法详解及实例
Oct 27 Javascript
老生常谈js中0到底是 true 还是 false
Mar 08 Javascript
Angular.js去除页面中显示的空行方法示例
Mar 30 Javascript
使用OPENLAYERS3实现点选的方法
Sep 24 Javascript
node.js的exports、module.exports与ES6的export、export default深入详解
Oct 26 Javascript
解决vue-cli3 使用子目录部署问题
Jul 19 Javascript
vue踩坑记录之数组定义和赋值问题
Mar 20 Javascript
JS实现星星海特效
Dec 24 Javascript
vue 使用 v-model 双向绑定父子组件的值遇见的问题及解决方案
Mar 01 Vue.js
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
给php新手谈谈我的学习心得
2007/02/25 PHP
常用的php ADODB使用方法集锦
2008/03/25 PHP
php array_intersect比array_diff快(附详细的使用说明)
2011/07/03 PHP
JavaScript创建命名空间的5种写法
2014/06/24 PHP
PHP判断当前使用的是什么浏览器(推荐)
2019/10/27 PHP
js函数般调用正则
2008/04/08 Javascript
关于JQuery($.load)事件的用法和分析
2013/04/09 Javascript
JS的location.href跳出框架打开新页面的方法
2014/09/04 Javascript
使用Raygun对Node.js应用进行错误处理的方法
2015/06/23 Javascript
深入解读JavaScript中的Iterator和for-of循环
2015/07/28 Javascript
Ext JS动态加载JavaScript创建窗体的方法
2016/06/23 Javascript
Jquery Easyui菜单组件Menu使用详解(15)
2016/12/18 Javascript
微信小程序实现左右列表联动
2020/05/19 Javascript
JS实现简单tab选项卡切换
2019/10/25 Javascript
node.js Promise对象的使用方法实例分析
2019/12/26 Javascript
编写Python脚本来获取Google搜索结果的示例
2015/05/04 Python
python编程测试电脑开启最大线程数实例代码
2018/02/09 Python
对Python 窗体(tkinter)文本编辑器(Text)详解
2018/10/11 Python
使用Python抓取豆瓣影评数据的方法
2018/10/17 Python
使用Python3+PyQT5+Pyserial 实现简单的串口工具方法
2019/02/13 Python
PyTorch: Softmax多分类实战操作
2020/07/07 Python
Python发送邮件实现基础解析
2020/08/14 Python
python tkinter实现连连看游戏
2020/11/16 Python
英国健康和美容技术产品购物网站:CurrentBody
2019/07/17 全球购物
SQL面试题
2013/12/09 面试题
中学生励志演讲稿
2014/04/26 职场文书
环保标语口号
2014/06/13 职场文书
个人查摆剖析材料
2014/10/16 职场文书
2015年教师新年寄语
2014/12/08 职场文书
琅琊山导游词
2015/02/05 职场文书
护士个人年度总结范文
2015/02/13 职场文书
因工资原因离职的辞职信范文
2015/05/12 职场文书
大学毕业谢师宴致辞
2015/07/27 职场文书
聘任协议书(挂靠)
2015/09/21 职场文书
Vue的列表之渲染,排序,过滤详解
2022/02/24 Vue.js
css让页脚保持在底部位置的四种方案
2022/07/23 HTML / CSS