var dataForWeixin={ img: $('#wx_img').val(), url: location.href, title: $('#wx_title').val(), desc: $('#wx_desc').val() }; var weixin={ data:{debug:false,appId:'',timestamp:'',nonceStr:'',signature:'',jsApiList:[ 'checkJsApi','onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone']}, get:function(){ if(/micromessenger/gi.test(navigator.userAgent.toLowerCase())){ var share_url = $("#share_url").val(); $.get(share_url,{url:dataForWeixin.url},function(res){ res = JSON.parse(res); if(res.code==10000){ //console.log(res) weixin.data.appId=res.result.appid; weixin.data.timestamp=res.result.timestamp; weixin.data.nonceStr=res.result.noncestr; weixin.data.signature=res.result.signature; weixin.init(); } }); } }, init:function(){ wx.config(weixin.data); wx.ready(function(){ // weixin.checkJsApi(); weixin.bind(); }) },checkJsApi:function(call){//是否支持 回调参数res bool:是否支持 wx.checkJsApi({jsApiList: ['getNetworkType','previewImage'],success:function(res){ call && call(res,res.errMsg.indexOf('ok')>-1); }}) },//分享到朋友圈 MenuShareTimeline:function(success,cancel,url,title,img,desc){ //weixin.set_weixin(url,title,img,desc) wx.onMenuShareTimeline({ title: dataForWeixin.title, link: dataForWeixin.url, imgUrl: dataForWeixin.img, desc:dataForWeixin.desc, trigger: function (res) { // alert('用户点击分享到朋友圈'); }, success: function (res) { //alert('已分享'); success && success(res); }, cancel: function (res) { //alert('已取消'); cancel && cancel(res); }, fail: function (res) { //alert(JSON.stringify(res)); } }); //alert('已注册获取“分享到朋友圈”状态事件') },MenuShareQQ:function(success,cancel,url,title,img,desc){//分享到QQ weixin.set_weixin(url,title,img,desc) wx.onMenuShareQQ({ title: dataForWeixin.title, link: dataForWeixin.url, imgUrl: dataForWeixin.img, desc:dataForWeixin.desc, trigger: function (res) { //alert('用户点击分享到QQ'); }, complete: function (res) { //alert(JSON.stringify(res)); }, success: function (res) { //alert('已分享'); success && success(res); }, cancel: function (res) { //alert('已取消'); cancel && cancel(res); }, fail: function (res) { // alert(JSON.stringify(res)); } }); //alert('已注册获取“分享到 QQ”状态事件'); },MenuShareAppMessage:function(success,cancel,url,title,img,desc){//发送给朋友 weixin.set_weixin(url,title,img,desc) wx.onMenuShareAppMessage({ title: dataForWeixin.title, link: dataForWeixin.url, imgUrl: dataForWeixin.img, desc: dataForWeixin.desc, trigger: function (res) { //alert('用户点击发送给朋友'); }, success: function (res) { //alert('已分享'); success && success(res); }, cancel: function (res) { //alert('已取消'); cancel && cancel(res); }, fail: function (res) { //alert(JSON.stringify(res)); } }); //alert('已注册获取“发送给朋友”状态事件'); },MenuShareWeibo:function(success,cancel,url,title,img,desc){//分享到微博 weixin.set_weixin(url,title,img,desc) wx.onMenuShareWeibo({ title: dataForWeixin.title, link: dataForWeixin.url, imgUrl: dataForWeixin.img, desc:dataForWeixin.desc, trigger: function (res) { //alert('用户点击分享到微博'); }, complete: function (res) { //alert(JSON.stringify(res)); }, success: function (res) { //alert('已分享'); success && success(res); }, cancel: function (res) { //alert('已取消'); cancel && cancel(res); }, fail: function (res) { //alert(JSON.stringify(res)); } }); // alert('已注册获取“分享到微博”状态事件'); }, MenuShareQZone:function(success,cancel,url,title,img,desc){//分享到空间 weixin.set_weixin(url,title,img,desc) wx.onMenuShareQZone({ title: dataForWeixin.title, link: dataForWeixin.url, imgUrl: dataForWeixin.img, desc:dataForWeixin.desc, trigger: function (res) { //alert('用户点击分享到空间'); }, complete: function (res) { //alert(JSON.stringify(res)); }, success: function (res) { //alert('已分享'); success && success(res); }, cancel: function (res) { //alert('已取消'); cancel && cancel(res); }, fail: function (res) { //alert(JSON.stringify(res)); } }); // alert('已注册获取“分享到空间”状态事件'); }, bind:function(){ weixin.checkJsApi(function(res,bool){ if(bool==false){ weixin.weixinbind(); } }) weixin.MenuShareTimeline(function(res){ //alert('分享到朋友圈成功') },function(){ //alert('取消分享到朋友圈') }); weixin.MenuShareQQ(function(res){ //alert('分享到qq') },function(){ //alert('取消分享到qq') }); weixin.MenuShareAppMessage(function(){ //alert('分享到朋友') },function(){ //alert('取消分享到朋友') }); weixin.MenuShareQZone(function(){ //alert('分享到空间') },function(){ //alert('取消分享到空间') }); weixin.MenuShareWeibo(function(res){ //alert('分享到朋友微博') },function(){ //alert('取消分享到微博') }); } } weixin.set_weixin=function(url,title,img,desc){ url && weixin.weixin_url(url); title && weixin.weixin_title(title); img && weixin.weixin_img(img); desc && weixin.weixin_desc(desc); } //修改微信分享url weixin.weixin_url=function(url){ dataForWeixin.url=url }//修改微信分享img weixin.weixin_img=function(img){ dataForWeixin.img=img }//修改微信分享title weixin.weixin_title=function(title){ dataForWeixin.title=title }//修改微信分享desc weixin.weixin_desc=function(desc){ dataForWeixin.desc=desc } weixin.weixinbind=function(){ var onBridgeReady=function(){ // 发送给好友; WeixinJSBridge.on('menu:share:appmessage', function(argv){ WeixinJSBridge.invoke('sendAppMessage',{ "appid": dataForWeixin.appId, "img_url": dataForWeixin.img, "img_width": "120", "img_height": "120", "link": dataForWeixin.url, "desc": dataForWeixin.desc, "title": dataForWeixin.title }, function(e){ //_report(link, fakeid, 1) "send_app_msg:cancel" != e.err_msg && "share_timeline:cancel" != e.err_msg && Main.sinacall() }); }); // 分享到朋友圈; WeixinJSBridge.on('menu:share:timeline', function(argv){ WeixinJSBridge.invoke('shareTimeline',{ "img_url":dataForWeixin.img, "img_width":"120", "img_height":"120", "link":dataForWeixin.url, "desc":dataForWeixin.desc, "title":dataForWeixin.title }, function(e){ "send_app_msg:cancel" != e.err_msg && "share_timeline:cancel" != e.err_msg && Main.sinacall() }); }); //分享到QQ WeixinJSBridge.on('menu:share:qq', function(argv){ WeixinJSBridge.invoke('sendQQ',{ "appid": dataForWeixin.appId, "img_url": dataForWeixin.img, "img_width": "120", "img_height": "120", "link": dataForWeixin.url, "desc": dataForWeixin.desc, "title": dataForWeixin.title }, function(e){ //_report(link, fakeid, 1) "send_app_msg:cancel" != e.err_msg && "share_timeline:cancel" != e.err_msg && Main.sinacall() }); }); // 分享到微博; WeixinJSBridge.on('menu:share:weibo', function(argv){ WeixinJSBridge.invoke('shareWeibo',{ "content":dataForWeixin.title+' '+dataForWeixin.url, "url":dataForWeixin.url }, function(res){ }); }); //显示微信右上角工具 WeixinJSBridge.call("showOptionMenu"); }; if(document.addEventListener){ document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); }else if(document.attachEvent){ document.attachEvent('WeixinJSBridgeReady' , onBridgeReady); document.attachEvent('onWeixinJSBridgeReady' , onBridgeReady); }else{ onBridgeReady(); } } $(function(){ weixin.get(); })