wxUtil.js 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. function wxShare(e) {
  2. $.ajax({
  3. url : '../wx/getSignature',
  4. type : 'get',
  5. data : {
  6. shareUrl : location.href
  7. },
  8. success : function(data) {
  9. wxinit(data, e);
  10. }
  11. });
  12. }
  13. function wxinit(data, e) {
  14. /*
  15. * 注意: 1.
  16. * 所有的JS接口只能在公众号绑定的域名下调用,公众号开发者需要先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。 2.
  17. * 如果发现在 Android 不能分享自定义内容,请到官网下载最新的包覆盖安装,Android 自定义分享接口需升级至 6.0.2.58
  18. * 版本及以上。 3. 完整 JS-SDK
  19. * 文档地址:http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html
  20. *
  21. * 如有问题请通过以下渠道反馈: 邮箱地址:weixin-open@qq.com 邮件主题:【微信JS-SDK反馈】具体问题
  22. * 邮件内容说明:用简明的语言描述问题所在,并交代清楚遇到该问题的场景,可附上截屏图片,微信团队会尽快处理你的反馈。
  23. */
  24. wx.config({
  25. debug : false,
  26. appId : data.appId,
  27. timestamp : data.timestamp,
  28. nonceStr : data.nonceStr,
  29. signature : data.signature,
  30. jsApiList : [ 'checkJsApi', 'onMenuShareTimeline',
  31. 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo' ]
  32. });
  33. wx.error(function(res) {
  34. // alert(JSON.stringify(res));
  35. });
  36. wx.ready(function() {
  37. // 1 判断当前版本是否支持指定 JS 接口,支持批量判断
  38. wx.checkJsApi({
  39. jsApiList : [ 'onMenuShareTimeline', 'onMenuShareAppMessage',
  40. 'onMenuShareQQ', 'onMenuShareWeibo' ],
  41. success : function(res) {
  42. // alert(JSON.stringify(res));
  43. // 2. 分享接口
  44. // 2.1 监听“分享给朋友”,按钮点击、自定义分享内容及分享结果接口
  45. wx.onMenuShareAppMessage({
  46. appId : data.appId,
  47. title : e.title,
  48. desc : e.desc,
  49. link : e.link,
  50. imgUrl : e.imgUrl,
  51. trigger : function(res) {
  52. // alert('用户点击发送给朋友');
  53. },
  54. success : function(res) {
  55. // alert('已分享');
  56. $.ajax({
  57. url : '../coupon/saveUserCoupon',
  58. type : 'post',
  59. data : {
  60. userId : e.userId,
  61. couponId : 21
  62. },
  63. success : function(data) {
  64. alert("优惠卷已领取");
  65. }
  66. });
  67. },
  68. cancel : function(res) {
  69. // alert('已取消');
  70. },
  71. fail : function(res) {
  72. // alert(JSON.stringify(res));
  73. }
  74. });
  75. // 2.2 监听“分享到朋友圈”按钮点击、自定义分享内容及分享结果接口
  76. wx.onMenuShareTimeline({
  77. title : e.desc,
  78. desc : e.desc,
  79. link : e.link,
  80. imgUrl : e.imgUrl,
  81. trigger : function(res) {
  82. // alert('用户点击分享到朋友圈');
  83. },
  84. success : function(res) {
  85. // alert('已分享');
  86. $.ajax({
  87. url : '../coupon/saveUserCoupon',
  88. type : 'post',
  89. data : {
  90. userId : e.userId,
  91. couponId : 21
  92. },
  93. success : function(data) {
  94. alert("优惠卷已领取");
  95. }
  96. });
  97. },
  98. cancel : function(res) {
  99. // alert('已取消');
  100. },
  101. fail : function(res) {
  102. // alert(JSON.stringify(res));
  103. }
  104. });
  105. // 2.3 监听“分享到QQ”按钮点击、自定义分享内容及分享结果接口
  106. wx.onMenuShareQQ({
  107. title : e.title,
  108. desc : e.desc,
  109. link : e.link,
  110. imgUrl : e.imgUrl,
  111. trigger : function(res) {
  112. // alert('用户点击分享到QQ');
  113. },
  114. complete : function(res) {
  115. // alert(JSON.stringify(res));
  116. },
  117. success : function(res) {
  118. // alert('已分享');
  119. },
  120. cancel : function(res) {
  121. // alert('已取消');
  122. },
  123. fail : function(res) {
  124. // alert(JSON.stringify(res));
  125. }
  126. });
  127. // 2.4 监听“分享到微博”按钮点击、自定义分享内容及分享结果接口
  128. wx.onMenuShareWeibo({
  129. title : e.title,
  130. desc : e.desc,
  131. link : e.link,
  132. imgUrl : e.imgUrl,
  133. trigger : function(res) {
  134. // alert('用户点击分享到微博');
  135. },
  136. complete : function(res) {
  137. // alert(JSON.stringify(res));
  138. },
  139. success : function(res) {
  140. // alert('已分享');
  141. },
  142. cancel : function(res) {
  143. // alert('已取消');
  144. },
  145. fail : function(res) {
  146. // alert(JSON.stringify(res));
  147. }
  148. });
  149. }
  150. });
  151. });
  152. }