频道栏目
首页 > 资讯 > 使用技巧 > 正文

微信分享代码之JS 部分

16-01-15        来源:[db:作者]  
收藏   我要投稿
function array_combine(a,b){
    for(item in b){
        a[item] = b[item];
    }
    return a;
}
var wxShare = {
    config : {
        appId : '',
        timestamp : 0,
        nonceStr : '',
        signature : '',
        func: ['shareTimeline','shareAppMessage'],
        /*--- 分享成功动态调用的方法----*/
        timeLineSuccess : 'hidePop',
        timeLineError : 'hidePop',
        appMessageSuccess : 'hidePop',
        appMessageError : 'hidePop',
        /*--- 分享成功动态调用的方法----*/
        timeLine : {
            title: '', // 分享标题
            link: '', // 分享链接
            imgUrl: '' // 分享图标
        },
        appMessage :{
            title: '', // 分享标题
            desc: '', // 分享描述
            link: '', // 分享链接
            imgUrl: '', // 分享图标
            type: '', // 分享类型,music、video或link,不填默认为link
            dataUrl: '' // 如果type是music或video,则要提供数据链接,默认为空
        },
        shareModel :[
            'checkJsApi','onMenuShareTimeline','onMenuShareAppMessage'
        ]
    },
    init : function(json){
        window.onload = function(){
            wxShare.config =  array_combine(wxShare.config,json);
            wxShare.configReg();
            wx.ready(function () {
                if(wxShare.config.func.length){
                    for(var i = 0 ; i < wxShare.config.func.length ; i++){
                        var mN = wxShare.config.func[i];
                        wxShare.func[mN]();
                    }
                }
            })
        }
    },
    configReg : function(){
          wx.config({
              debug : false,
              appId: wxShare.config.appId, // 必填,公众号的唯一标识
              timestamp: wxShare.config.timestamp, // 必填,生成签名的时间戳
              nonceStr: wxShare.config.nonceStr, // 必填,生成签名的随机串
              signature: wxShare.config.signature,// 必填,签名,见附录1
              jsApiList: wxShare.config.shareModel
          });
    },
    func : {
        shareTimeline :function(){//分享朋友圈
            wx.onMenuShareTimeline(array_combine( wxShare.config.timeLine,{success: function(){ eval(wxShare.func[wxShare.config.timeLineSuccess]()); }, cancel: function(){eval(wxShare.func[wxShare.config.timeLineSuccess]());}}));
        },
        shareAppMessage :function(){//分享单个朋友
            wx.onMenuShareAppMessage(array_combine( wxShare.config.appMessage,{success: function(){eval(wxShare.func[wxShare.config.appMessageError]()); }, cancel: function(){eval(wxShare.func[wxShare.config.appMessageSuccess]());}}));
        },hidePop : function(){
            hidePopUp()
        }
    }
}

 

 
相关TAG标签
上一篇:微信推出网页开发调试工具,方便广大微信开发工程师上线调试
下一篇:微信公众平台开发学习系列(四):微信分享内容修改与分享之后才能访问某页面
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站