UC浏览器 分享到朋友圈和微信好友

  1. 云栖社区>
  2. 博客列表>
  3. 正文

UC浏览器 分享到朋友圈和微信好友

清山 2015-04-28 14:45:00 浏览1675 评论0

摘要: 用手机UC浏览器访问新浪微博,会注意到有这样的两个分享按钮: 在手机端浏览器里,点击分享按钮,就可以启动微信客户端并分享到微信。研究了下其源代码,存在这样的一个js:http://mjs.sinaimg.cn/wap/module/share/201504071745/js/addShare.min.js 从里面抽离出了分享调用的方法,方便调用。

用手机UC浏览器访问新浪微博,会注意到有这样的两个分享按钮:


在手机端浏览器里,点击分享按钮,就可以启动微信客户端并分享到微信。研究了下其源代码,存在这样的一个js:http://mjs.sinaimg.cn/wap/module/share/201504071745/js/addShare.min.js

从里面抽离出了分享调用的方法,方便调用。(注意:这个分享功能只在UC手机浏览器有效)

if (/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))) {
        if (window.location.href.indexOf("?mobile") < 0) {
            try {
                //判断是手机端访问
                if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) {

	            //判断是UC浏览器
                    if (typeof (ucweb) != "undefined") {
                        
                        //微信好友
                        $("#btnShareFirend").unbind();
                        $("#btnShareFirend").bind("click", function () {
                            var Browser = new Object();
                            Browser.ios = /iphone/.test(Browser.userAgent); //判断ios系统 
                            var title = document.title;
                            var img = "";
                            var url = location.href;
                            if (Browser.ios) {
                                ucbrowser.web_share(title, img, url, 'kWeixin', '', '', '');
                            } else {
                                ucweb.startRequest("shell.page_share", [title, img, url, 'WechatFriends', '', '', '']);
                            };
                        });

                        //微信朋友圈
                        $("#btnWeixinShare").unbind();
                        $("#btnWeixinShare").bind("click", function () {
                            var Browser = new Object();
                            Browser.ios = /iphone/.test(Browser.userAgent); //判断ios系统 
                            var title = document.title;
                            var img = "";
                            var url = location.href;
                            if (Browser.ios) {
                                ucbrowser.web_share(title, img, url, 'kWeixinFriend', '', '', '');
                            } else {
                                ucweb.startRequest("shell.page_share", [title, img, url, 'WechatTimeline', '', '', '']);
                            };
                        });
                         
                    }
                }
            } catch (e) { }
        }
    }

完整代码:

<html>
<body>
    <script src="jquery.min.js"></script>  
    <h4>测试微信分享功能(仅在手机版UC浏览器下有效)</h4> 
    <input type="button" class="btnShareFriends" style='margin: 20px auto; width: 100%;height:50px;' value='分享给微信好友'> </input>
    <br/> 
    <input type="button" class="btnWeixinShare" style='margin: 20px auto; width: 100%;height:50px;' value='分享到微信朋友圈'> </input>
    <script type="TEXT/javascript">
      $(function () {
    if (/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))) {
        if (window.location.href.indexOf("?mobile") < 0) {

            //判断是手机端访问
            if (/Android|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)) {

                //判断是UC浏览器
                if (typeof (ucweb) != "undefined") {

                    $(".btnShareFriends").click(function () {
                        var Browser = new Object();
                        Browser.ios = /iphone/.test(Browser.userAgent); //判断ios系统 
                        var title = "测试分享到朋友圈";
                        var img = "";
                        var url = location.href;
                        if (Browser.ios) {
                            ucbrowser.web_share(title, img, url, 'kWeixin', '', '@39yst', '');
                        } else {
                            ucweb.startRequest("shell.page_share", [title, img, url, 'WechatFriends', '', '', '']);
                        } 
                    });

                    $(".btnWeixinShare").click(function () {
                        var Browser = new Object();
                        Browser.ios = /iphone/.test(Browser.userAgent); //判断ios系统 
                        var title = "测试分享到朋友圈";
                        var img = "";
                        var url = location.href;
                        if (Browser.ios) {
                            ucbrowser.web_share(title, img, url, 'kWeixinFriend', '', '@39yst', '');
                        } else {
                            ucweb.startRequest("shell.page_share", [title, img, url, 'WechatTimeline', '', '', '']);
                        }
                    });
                }
            } else {
                alert("请使用手机UC浏览器测试");
            }
        } else {
            alert("请使用手机访问测试");
        }
    }
});
    </script>
</body>
</html>


用云栖社区APP,舒服~

【云栖快讯】诚邀你用自己的技术能力来用心回答每一个问题,通过回答传承技术知识、经验、心得,问答专家期待你加入!  详情请点击

网友评论

清山
文章502篇 | 关注3
关注
在云上签发Symantec、WoSign、CFCA证书,实现网站HTTPS化,使网站可信,防... 查看详情
操作审计(ActionTrail)会记录您的云账户资源操作,提供操作记录查询,并可以将记录文... 查看详情
基于阿里云快速搭建海量基因数据上传、存储到分析挖掘的一体化解决方案。极大提升基因数据的解读效... 查看详情
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效... 查看详情
阿里云总监课正式启航

阿里云总监课正式启航