huangxiaowen

很久没做移动端活动了,想不少人都参与过微信里面的活动,既然活动就少不了分享。那我就行一个前端的角度说说如何实现微信分享的吧。

对应微信分享,现在已有公共接口,微信的开发者文档SDK:https://mp.weixin.qq.com/wiki/11/74ad127cc054f6b80759c40f77ec03db.html

首先要引用官方的jweixin-1.0.0.js,然后便可启用接口,下面就以分享到微信好友,朋友圈,QQ好友,QQ空间为例

 

var link = window.location.href.replace(\'weixin-share.html\',\'\');
            var shareData = {
                    imgUrl: link +"img/share.jpg",   // 分享图标
                    link:link + \'weixin-share.html?inviteCode=\'+localStorage.inviteCode,// 分享链接
                    desc: \'流量告急不用慌,每邀1人送1次,疯狂邀请疯狂送,流量之王就是你!\',// 分享描述
                    title: \'邀请送,500M流量疯狂送!\',// 分享标题
                    success: function () {
                        if(localStorage.lastname){
                            alert("分享成功");
                        }

                      },
                      cancel: function () {
                          // 用户取消分享后执行的回调函数
                      }
                };
            if (typeof wx != \'undefined\') {
                wx.config({
                    debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
                    appId: \'wx4601e3fa5832f936\', // 必填,公众号的唯一标识
                    timestamp:\'1472778330\' , // 必填,生成签名的时间戳
                    nonceStr: \'HZSMK123\', // 必填,生成签名的随机串
                    signature: \'fb0a612086e3bb8c2fb6c462c8a45722fce8409b\',// 必填,后台生成,与url有关签名,见附录1
                    jsApiList: [\'onMenuShareTimeline\',\'onMenuShareAppMessage\',\'hideMenuItems\',\'onMenuShareQQ\',\'onMenuShareQZone\'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
                });
                wx.ready(function(){
                    // 分享到朋友圈
                    wx.onMenuShareTimeline(
                            shareData
                    );
                    // 分享给朋友
                    wx.onMenuShareAppMessage(
                            shareData
                    );
                    // 分享到QQ
                    wx.onMenuShareQQ(
                        shareData
                    );
                    // 分享到QQ空间
                    wx.onMenuShareQZone(
                        shareData
                    );
                    // 隐藏菜单项
                    wx.hideMenuItems({
                        menuList: [
                                   \'menuItem:exposeArticle\', //举报
                                   \'menuItem:setFont\',
                                   \'menuItem:refresh\',
                                   \'menuItem:copyUrl\', //复制链接
                                   \'menuItem:originPage\',
                                   \'menuItem:readMode\',
                                   \'menuItem:openWithQQBrowser\',
                                   \'menuItem:openWithSafari\',
                                   \'menuItem:share:email\'
                                   ] // 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮,所有menu项见附录3
                    });

                });
            }

 

 

 

说明一下appId必须是对外有效的公众号唯一id,signature必须后台生成传给前端,此时项目代码的分享功能只有放在制定(与微信绑定的)的二级域名下才可以起效

 

分类:

技术点:

相关文章:

  • 2021-12-29
  • 2021-09-27
  • 2021-12-10
  • 2021-10-16
  • 2021-06-16
  • 2021-05-26
  • 2021-11-04
  • 2021-11-11
猜你喜欢
  • 2021-11-03
  • 2021-11-01
  • 2021-11-27
  • 2021-08-13
  • 2021-09-24
相关资源
相似解决方案