由于微信的限制,应用文件在内置浏览器中下载全部被屏蔽掉,造成很多人用微信扫描二维码下载时点击下载按钮没反应,我想到的是做一个提示用户在浏览器中打开下载。
方法一:遮罩提示法
网站制作、网站建设介绍好的网站是理念、设计和技术的结合。创新互联建站拥有的网站设计理念、多方位的设计风格、经验丰富的设计团队。提供PC端+手机端网站建设,用营销思维进行网站设计、采用先进技术开源代码、注重用户体验与SEO基础,将技术与创意整合到网站之中,以契合客户的方式做到创意性的视觉化效果。
其实原来很简单,就是判断当前是在微信内置浏览器中,然后将默认隐藏的提示层显示出来。
第一步:判断微信的UA。
var ua = navigator.userAgent; var isWeixin = !!/MicroMessenger/i.test(ua);
第二步:引入默认隐藏层。
<a href="http://caibaojian.com/test.apk" id="JdownApp">点击下载APP</a><a href="http://caibaojian.com/test.apk" id="JdownApp2" class="btn-warn">点击下载APP2</a><div class="wxtip" id="JweixinTip"><span class="wxtip-icon"></span><p class="wxtip-txt">点击右上角<br/>选择在浏览器中打开</p></div>
第三步:添加CSS样式
wxtip{background: rgba(0,0,0,0.8); text-align: center; position: fixed; left:0; top: 0; width: 100%; height: 100%; z-index: 998; display: none;} .wxtip-icon{width: 52px; height: 67px; background: url(weixin-tip.png) no-repeat; display: block; position: absolute; right: 20px; top: 20px;} .wxtip-txt{margin-top: 107px; color: #fff; font-size: 16px; line-height: 1.5;}
第四步:点击按钮显示隐藏层,点击隐藏层关闭,总的JS代码如下:
function weixinTip(ele){ var ua = navigator.userAgent; var isWeixin = !!/MicroMessenger/i.test(ua); if(isWeixin){ ele.onclick=function(e){ window.event? window.event.returnValue = false : e.preventDefault(); document.getElementById('JweixinTip').style.display='block'; } document.getElementById('JweixinTip').onclick=function(){ this.style.display='none'; } } }var btn1 = document.getElementById('JdownApp');//下载一weixinTip(btn1);var btn2 = document.getElementById('JdownApp2'); //下载二weixinTip(btn2);
以上就是遮罩代码,你再也不用担心用户不会操作了。
方法二:自动跳转法
该方法需要分苹果和安卓2种情况,我们可以用现有的工具接口:Getinstall
安卓:
可以直接填写apk的下载地址,也可以直接填写H5下载页面的落地页,接口判断为安卓设备时会自动跳出外部浏览器,并打开填写的地址。
苹果:
这里就比较复杂了,由于Getinstall接口判断设备为苹果时,第一步会判断是网页还是下载,如果是下载APP,会自动调用AppStore的APP下载模块,直接下载APP,如果判断为网页,则也是执行上面的遮罩代码,提示用户在safari 中打开。
虽然Getinstall是专用于APP下载的接口,但如果是想要做网页跳转也是可以直接拿来使用的。
文章题目:微信扫码提示在浏览器中打开的2种实现方式
转载来于:https://www.cdcxhl.com/article8/ipgiip.html
成都网站建设公司_创新互联,为您提供网站排名、品牌网站设计、企业建站、网站维护、企业网站制作、品牌网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联