解决微信浏览器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 相关文章推荐
JSChart轻量级图形报表工具(内置函数中文参考)
Oct 11 Javascript
简单实现js页面切换功能
Jan 10 Javascript
JS取模、取商及取整运算方法示例
Oct 13 Javascript
jquery实现图片列表鼠标移入微动
Dec 01 Javascript
基于jQuery实现左侧菜单栏可折叠功能
Dec 27 Javascript
详解Vue 动态添加模板的几种方法
Apr 25 Javascript
浅析JavaScript中的特殊数据类型
Dec 15 Javascript
微信小程序中使用ECharts 异步加载数据实现图表功能
Jul 13 Javascript
Vue作用域插槽slot-scope实例代码
Sep 05 Javascript
JS实现的贪吃蛇游戏完整实例
Jan 18 Javascript
vue组件间的参数传递实例详解
Apr 26 Javascript
vue自动路由-单页面项目(非build时构建)
Apr 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
PHP中数组定义的几种方法
2013/09/01 PHP
CI框架中集成CKEditor编辑器的教程
2014/06/09 PHP
php文件操作小结(删除指定文件/获取文件夹下的文件名/读取文件夹下图片名)
2016/05/09 PHP
php metaphone()函数及php localeconv() 函数实例解析
2016/05/15 PHP
php处理单文件、多文件上传代码分享
2016/08/24 PHP
PHP7新特性foreach 修改示例介绍
2016/08/26 PHP
PHP常用的三种设计模式
2017/02/17 PHP
[原创]PHP正则删除html代码中a标签并保留标签内容的方法
2017/05/23 PHP
基于laravel Request的所有方法详解
2019/09/29 PHP
ExtJS 2.0实用简明教程 之Border区域布局
2009/04/29 Javascript
jQuery(1.3.2) 7行代码搞定跟随屏幕滚动的层
2009/05/21 Javascript
jquery使用正则表达式验证email地址的方法
2015/01/22 Javascript
jQuery控制frames及frame页面JS的方法
2016/03/08 Javascript
浅析angularJS中的ui-router和ng-grid模块
2016/05/20 Javascript
轻松掌握JavaScript中介者模式
2016/08/26 Javascript
详解angular用$sce服务来过滤HTML标签
2017/04/11 Javascript
利用webstrom调试Vue.js单页面程序的方法教程
2017/06/06 Javascript
AngualrJs清除定时器遇到的坑
2017/10/13 Javascript
浅谈React Native Flexbox布局(小结)
2018/01/08 Javascript
通过说明与示例了解js五种设计模式
2019/06/17 Javascript
layui当点击文本框时弹出选择框,显示选择内容的例子
2019/09/02 Javascript
python中pandas.DataFrame对行与列求和及添加新行与列示例
2017/03/12 Python
python Web开发你要理解的WSGI & uwsgi详解
2018/08/01 Python
python使用adbapi实现MySQL数据库的异步存储
2019/03/19 Python
Keras 中Leaky ReLU等高级激活函数的用法
2020/07/05 Python
Css3圆角边框制作代码
2015/11/18 HTML / CSS
澳大利亚手表品牌:Time IV Change
2018/10/06 全球购物
个人自我评价分享
2013/12/20 职场文书
宗教学大学生职业生涯规划范文
2014/02/08 职场文书
市场开发与营销专业求职信范文
2014/05/01 职场文书
致运动员赞词
2015/07/22 职场文书
2016年端午节校园广播稿
2015/12/18 职场文书
求职自我评价参考范文
2019/05/16 职场文书
Javascript使用integrity属性进行安全验证
2021/11/07 Javascript
Python 匹配文本并在其上一行追加文本
2022/05/11 Python
win10系统xps文件怎么打开?win10打开xps文件的两种操作方法
2022/07/23 数码科技