在移动wap中,经常会使用window.location.href去跳转页面,这个方法在绝大多数浏览器中都不会 存在问题,但早上测试的同学会提出了一个bug:在安卓手机的微信自带浏览器中,这个是失效的,并没有跳转: 原来的代码: window.location.reload(location.href); 初步判断可能是缓存的问题,首先想到的解决办法就是在要跳转的url后面加个时间戳,告知浏览器这是一个新的请求: window.location.reload(location.href+'?ti…
在移动web中,经常会使用window.location.href去跳转页面,这个方法在绝大多数浏览器中都不会存在问题,但是在安卓手机的微信自带浏览器中,会出现一个奇怪的bug. window.location.href = baseUrl + 'article/comment'; 暂时还没找到具体的原因,但是当时遇到问题时,感觉是缓存在捣乱,所以尝试着给跳转链接后面加了一个随机数或者上面的代码是通过href属性赋值去跳转到文章的评论页面,这段代码在安卓手机的微信自带浏览器中会偶发性的失效,调用…
我们知道,ios 在safari浏览器中,audio标签不能在没有用户交互的情况下自动播放或有js直接控制播放,这是系统限制的一些原因. 但是背景音乐在微信浏览器可以设置自动播放,config配置一下就ok! 1.引入Js文件 在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.4.0.js 2.通过config接口注入权限验证配置 wx.config({ // 配置信息, 即使不正确也能使用 wx.read…
最近接手一微信项目,测试功能时,发现跳转在android手机上不动了.iso系统可以正常跳转的.解决方法: window.location.href = url + '?v=' + (new Date().getTime())…
1.问题 在微信浏览器中,需要时刷新当前页面. 正常情况下我们直接使用 location.reload 方法来刷新. 2.解决方法 function realod(){ var {search,href} = window.location; href = href.replace(/&?t_reload=(\d+)/g,'') window.location.href = href+(search?'&':'?')+"t_reload="+new Date().get…
前端JS中使用XMLHttpRequest 2上传图片到服务器,PC端和大部分手机上都正常,但在少部分安卓手机上上传失败,服务器上查看图片,显示字节数为0.下面是上传图片的核心代码: HTML <input type="file" id="choose" capture="camera" accept="image/*"> JavaScript var filechooser = document.getEleme…
公众号中需要在某些页面显示手机号码,并且需要点击后拨号. 原以为 <a href="tel:10086">10086</a> 可以解决了, 没想到在微信浏览器中并没有什么反应(老版本). 网上所有方案都是在链接地址加上锚点去解决这个问题. 但是目前网站的锚点已经用于单页面路由使用了,不适合这个方案. 于是想到了签入iframe实现. 新建一个页面 calltelephone.html 在src中传入电话.iframe的ID.微信锚点, 同时通过样式和脚本调整if…
在PC端和手机浏览器中router.replace() or router.push()能够正常使用,页面的地址和页面都正常显示:但是在微信中,从/a页面通过router.push('/b')跳转到/b页面后,页面正常,但是复制浏览器的地址会发现其地址仍为/a;选择在浏览器打开发现也是显示的/a的页面.这应该是微信浏览器那边的问题,微信浏览器只会记住你第一次进来的地址. 微信浏览器不会自动添加 # 在pc端或者手机浏览器开发的时候 输入localhost:8080,浏览器会自动跳转到localh…
JS动态修改微信浏览器中的title我们的原理是设置一个ifame然后我们再加载一下就可以实现了,具体的例子如下所示. 平时使用JS修改title,直接document.title=新标题就好了 这样在安卓的微信浏览器是正常运行,可在iOS中这样的确不起作用.微信浏览器的title在页面加载完成后就确定了,因此如果光使用document.title来修改,不会有效果.所以这里使用了黑科技.在微信浏览器中使用如下代码来动态修改浏览器上的title标题: var $body = $('body');…
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"…
// js判断是否是在微信浏览器中打开 function is_weixn(){ var ua = navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i)=="micromessenger") { return true; } else { return false; } } console.log(is_weixn());…
有段时间没有清理IE的临时文件(缓存文件),在我清理的时候,我突然发现一个问题. 我打开的一个网站,图片默认缓存一个月的,但我发现,当我上传图片或删除图片之后,图片重新缓存,也就意味着,在我上传新图片或删除图片的时候,页面上所有原来的图片都重新载入,重新缓存了. 从这一点上看,图片本身的缓存一点意义都没有了. 我查看了网页的javascript代码,发现在上传或删除的之后,调用的是 location.reload(); 难道说,这个location.reload()不仅重新载入页面,而且页面里的…
我记得之前在一次项目中,出现过浏览报错: 当时的文档链接如右:[解决]HTML5新标签audio的autoplay自动播放属性失效的解决方案 所以在这次H5的制作中,我使用了iframe来加载音频文件,使用这种方式后,电脑端是没有问题的,但是当上传至服务器上在手机上浏览时,会出现点击音乐旋转按钮无法暂停播放音乐(使用iframe之后相当于一个子文档#document,但是我也找到方法获取子文档中的audio元素了,但是不知道为什么点击按钮后,暂停播放功能无法生效).ios浏览器中音乐无法自动播放…
// 为什么叫<大事记>? // 以前总有面试官问这样一个问题:“你在项目中遇到过最头疼的问题是什么,是怎么解决的?” // 当时总觉得,已解决的问题都算不上头疼,所以回答总是不尽人意. // 最近遇到微信端的这个问题,非常让人头疼,正好有小伙伴和我聊到面试经验,灵机一动,<大事记>由此而生 问题描述: 在安卓系统的微信浏览器里面,<video> 标签触发了 play() 事件,即开始播放之后 <video> 标签的层级会变成 MAX 级别,无论如何设置 z…
easyui在页面载入时,会自己主动填充datagrid中的数据,当加入.改动.删除后,会触发reload事件,对datagrid进行又一次载入. 这个过程在FireFox中没有问题,用firebug观察发现前后两次http状态码都是200,证明两次都是从server又一次取的新数据,没实用浏览器中的缓存. 可到了IE中,发现第一次载入时的http状态码是200,reload时的http状态码是304,证明reload时的数据是从缓存中读取的,造成的结果是加入后datagrid表格不更新. 方案…
我们知道,在JavaScript中提供了一个window.history.back()方法用于返回上一页,另外也可以使用window.history.go(-1)返回上一页(跳转). 在其他的主流浏览器中(Chrome.Firefox等),使用这两个方法都会重新执行返回页面的JS. 这就意味着,当文档加载完成事件函数中有刷新页面的操作代码的情况下,上一个页面会刷新. 但是在Safari浏览器中则情况有一些不同. 在实际测试中,在移动端中Android设备都会刷新,但是在IOS设备的Safari浏…
手机网站唤起支付宝支付: H5 网站实现支付宝支付是一个很常见的需求: 实现方式主要是在后台配置和预支付, 前端需要做的就是唤起 支付宝App 然后就可以输入密码支付. 这个其实难度很低, 主要就是在后台返回的签名加上支付宝给的 基本访问前缀 拼接 URL 然后通过方法 window.location.href 方法打开拼接后的 URL 即可唤起支付宝支付. 微信浏览器打开网站使用支付宝支付: 这个比较坑爹,微信浏览器会当掉 支付宝的 URL 链接,只能去浏览器中打开就可 1.一般直接通过 wi…
<?php $a=false; $b=$_SERVER['HTTP_USER_AGENT']; if(strpos($b,"MicroMessenger")===false){ $a=0;// 非微信浏览器禁止浏览 }else{ $a=true;// 微信浏览器,允许访问 } if(!$a){ echo "请在微信中打开!"; }else{ echo "你在使用微信~!~"; }…
这是安卓微信的一个遗留问题. 解决办法很简单: 将input标签 <input type=“file" name="image" accept="image/gif, image/jpeg, image/png”> 写成 <input type="file" name="image" accept=“image/*”> 即可解决.…
1.使用jq判断是否用微信浏览器打开页面 var is_weixin = (function(){return navigator.userAgent.toLowerCase().indexOf('micromessenger') !== -1})(); if(is_weixin){ return true; }else{ return false; } 2.使用es6判断是否用微信浏览器打开页面 let isWeiXin = () => { return navigator.userAgent…
reload 方法,该方法强迫浏览器刷新当前页面. 语法: location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页.true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新") replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过"前进"和"后退"来访问已经被…
[转]:http://zccst.iteye.com/blog/2162658 reload 方法,该方法强迫浏览器刷新当前页面. 语法: location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页.true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新") replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,…
首先介绍两个方法的语法: reload 方法,该方法强迫浏览器刷新当前页面.语法: location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页. true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新") replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL.…
首先介绍两个方法的语法: reload 方法,该方法强迫浏览器刷新当前页面.语法:location.reload([bForceGet])  参数:bForceGet, 可选参数, 默认为 false,从客户端缓存里取当前页. true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新") replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL.语…
document.location.reload();会重新加载页面,onload事件会被触发. location.href='xxx'刷新页面,onload事件不会触发.…
一.使用JSSDK需要一个公众号(需要认证!): (1).把自己项目的服务器地址输入. (2).把MP_verify_m7Qp93BAuIGDWRVO.txt  文件下载下来,放到该服务器域名指向的根目录!    这样基础工作就完成了!  二.后台生成前端需要的参数!   (1).前端想要实现分享.扫一扫等等需要的参数! wx.config({ debug: false,//是否开启调试功能,这里关闭! appId: jssdk.appId,//appid timestamp: parseInt…
问题: 最近在做一个微信中分享的宣传页,分不同的场景,切换不同的场景时需要设置不同的title,实现的方案很简单,当用户切换场景的时候,修改document对象的title属性,可是在实际测试中,ios微信确不起作用. 解决思路: 首先怀疑ios微信不支持,document.title修改头部修改,但是我们经过测试,如果页面首次加载直接修改title属性是可以实现的.所以这里原因有可能就是只在页面首次加载时初始化了标题title,之后就没有再监听 window.title的change事件,所以…
今天遇到个让人崩溃的问题: 平台: 安卓 4.0 描述: 使用 appcan 开发 hybrid 应用,手机上点击下拉选框按钮无法弹出选择面板. 说明: 发现 webkit 内核 position:fixed; 和HTML的 select 标签有冲突, 只要 select 区域上(上方都不用说了被遮盖了肯定无效)或下方存在 固定定位 fixed 不论 z-index 层高为-1还是其它 都不会触发选项面板,但是click 和touch事件却依然可以触发. 搞了TMD一天,试了N多办法没想到却是个…
微信ios只支持几种特定的视频格式,一般使用mp4格式的视频(腾讯官方就是用的这种视频格式)…
最近在做前台效果的时候用到了JQuery提供的resize()事件.resize 这个事件是监听浏览器窗口的放大与缩小,也就是说浏览器窗口大小的变化. 我在W3CSCHOOL上面查阅的时候,提供了一个例子.W3C源码 <</SPAN>html> <</SPAN>head> <</SPAN>script type="text/javascript" src="/jquery/jquery.js">…