>  기사  >  웹 프론트엔드  >  微信公众号与HTML 5混合模式揭秘5--JSSDK开发技巧1_html/css_WEB-ITnose

微信公众号与HTML 5混合模式揭秘5--JSSDK开发技巧1_html/css_WEB-ITnose

WBOY
WBOY원래의
2016-06-24 11:32:451015검색

微信公众号与HTML 5混合模式揭秘1——如何部署JSSDK

 微信公众号与HTML 5混合模式揭秘2——分享手机相册中照片

微信公众号与HTML 5混合模式揭秘3——JSSDK获取地理位置

微信公众号与HTML 5混合模式揭秘4——jssdk调用微信扫一扫

 

  

  在目前的微信浏览器中,有的版本不支持APP Store页面,估计是微信浏览器有什么限制或者有什么利益冲突吧,但是以腾讯的开放程度来看没必要限制。

例如在页面中写个如下的代码:

 

01     href="https://itunes.apple.com/cn/app/wo-ai/id955760733?mt=8">download</a> 

以上代码,在微信浏览器内点击的时候,会出现没有任何相应的bug,但是如果此地址变为360、百度等链接地址,那么就会没问题。

 解决这个问题的主要方案就是在微信浏览器内,利用微信的API。

第1步,判断浏览器是否为微信浏览器,JS代码如下:

 

01     varisWechat = function (){02         var ua = navigator.userAgent.toLowerCase();03        if(ua.match(/MicroMessenger/i)=="micromessenger") {04             return true;05         } else {06             return false;07         }08     }

  当然,您也可以采用上一节介绍的后台语言(PHP、Ruby、nodejs等)判断浏览器是否为微信浏览器。

 

第2步,将原来的链接,利用“encodeURIComponent”编码,结合“http://mp.weixin.qq.com/mp/redirect?url=”生成新的链接地址,结果如下:

 

01     "http://mp.weixin.qq.com/mp/redirect?url=https%3A%2F%2Fitunes.apple.com%2Fcn%2Fapp02   %2Fwo-ai%2Fid955760733%3Fmt%3D8"

   

第3步,完整的示例代码方法如下: 

01     02     <htmllang>03     04         <meta charset="UTF-8">05         <title>第12章 12.2节</title>06     07     08     <h1style>:)09     <bstyle>App Store Demo!10     <pstyle id="conversionUrl">11     <scripttype>12         var isWechat = function(){13                     var ua =navigator.userAgent.toLowerCase();                           //获取浏览器字符14                    if(ua.match(/MicroMessenger/i)=="micromessenger") {         //判断是否为微信15                         return true;16                     } else {17                         return false;18                     }19                 },20                 conversionUrl = function(url){                                   //根据浏览器类型转换url21                     if(isWechat()){22                         return23     "http://mp.weixin.qq.com/mp/redirect?url="+encodeURIComponent(url);//转换为微信内可用的24    地址25                     }else{26                         return url;                                                       //不转换27                     }28                 },29                 _url =30     conversionUrl("https://itunes.apple.com/cn/app/wo-ai/id955760733?mt=8");31         window.onload = function(){                                                     //页面载入成功后修改dom32            document.getElementById("conversionUrl").innerHTML = "转换之后的url:"+_url;33         }34     35     36     </scripttype></pstyle></bstyle></h1style></htmllang>
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.