wechatCp.js 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245
  1. var head= document.getElementsByTagName('head')[0];
  2. var WXscript= document.createElement('script');
  3. var shareUrl = 'https://sgmhks.sgmlink.com/sgm_txh_web/html/recommended.html'
  4. var thisUrl = 'https://sgmhks.sgmlink.com/sgm_txh_web/html/recommend.html'
  5. WXscript.type= 'text/javascript';
  6. var shareConfig = {
  7. title: '上汽通用员工推荐购',
  8. desc: '通过内部推荐链接预约活动,享员工推荐福利',
  9. link: shareUrl,
  10. imgUrl: projectUrl+'images/share.jpg',
  11. }
  12. var ua= window.navigator.userAgent.toLowerCase()
  13. if(ua.indexOf('wxwork')>-1&&!isDev){
  14. WXscript.src = '//res.wx.qq.com/open/js/jweixin-1.2.0.js'
  15. head.appendChild(WXscript);
  16. WXscript.onload =function(){
  17. WXscript= document.createElement('script');
  18. WXscript.type= 'text/javascript';
  19. WXscript.src = '//auth-shgm-wx.cw.sgmlink.com/qywechat.js?debug=false&apis=checkJsApi,onMenuShareAppMessage,onMenuShareWechat,onMenuShareTimeline,shareAppMessage,shareWechatMessage,hideMenuItems'
  20. head.appendChild(WXscript);
  21. WXscript.onload =function(){
  22. wxReady();
  23. }
  24. }
  25. }else if(!isDev){
  26. WXscript.src= 'https://res.wx.qq.com/open/js/jweixin-1.6.0.js';
  27. head.appendChild(WXscript);
  28. WXscript.onload =function() {
  29. post({
  30. url: api.getJsapiTicket,
  31. data: {
  32. url: window.location.href
  33. },
  34. noToast: true,
  35. noLoading: true,
  36. success: function (res) {
  37. let conf = res.data;
  38. conf.jsApiList = ['getLocation', 'updateAppMessageShareData', 'updateTimelineShareData', 'openAddress','hideMenuItems']
  39. wxReady();
  40. // conf.debug = true;
  41. wx.config(conf);
  42. }
  43. })
  44. }
  45. }
  46. // var shareImg = new Image();
  47. // shareImg.src = 'http://www.lairey.com/images/icon/favicon.png';
  48. // var warp = $("<div style='display: none'><img src='http://www.lairey.com/images/icon/favicon.png' /></div>")[0];
  49. // var shareFirst = document.body.firstElementChild;
  50. // document.body.insertBefore(warp,shareFirst);
  51. // var shareTxt = '';
  52. // WXscript.onload =function(){
  53. // post({
  54. // url:api.getJsapiTicket,
  55. // data:{
  56. // url:window.location.href
  57. // },
  58. // noToast:true,
  59. // noLoading:true,
  60. // success:function(res){
  61. // let conf = res.data;
  62. // conf.jsApiList = ['getLocation','updateAppMessageShareData','updateTimelineShareData','openAddress']
  63. // wxReady();
  64. // // conf.debug = true;
  65. // wx.config(conf);
  66. // }
  67. // })
  68. // }
  69. function wxReady() {
  70. // alert("init wxReady");
  71. wx.ready(function () {
  72. // alert("init share");
  73. try{
  74. setShare()
  75. }catch(err){
  76. }
  77. })
  78. wx.error(function(res){
  79. console.error(res);
  80. // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
  81. })
  82. };
  83. //设置分享
  84. function setShare(){
  85. if(ua.indexOf('wxwork')>-1){
  86. wx.showOptionMenu();
  87. wx.showAllNonBaseMenuItem();
  88. wx.hideMenuItems({
  89. menuList: [] // 要隐藏的菜单项
  90. });
  91. }else{
  92. wx.hideMenuItems({
  93. menuList: ['menuItem:share:qq','menuItem:share:weiboApp','menuItem:share:QZone','menuItem:copyUrl','menuItem:openWithSafari','menuItem:openWithQQBrowser'] // 要隐藏的菜单项
  94. });
  95. }
  96. //分享到朋友圈
  97. // wx.updateTimelineShareData({
  98. // title: shareConfig.title, // 分享标题
  99. // link: shareConfig.link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  100. // imgUrl: shareConfig.imgUrl, // 分享图标
  101. // success: function () {
  102. // // 用户点击了分享后执行的回调函数
  103. // console.log("updateTimelineShareData");
  104. // },
  105. // error: function (e) {
  106. // console.error(e);
  107. // }
  108. // });
  109. try {
  110. wx.onMenuShareTimeline({
  111. title: shareConfig.title, // 分享标题
  112. link: shareConfig.link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  113. imgUrl: shareConfig.imgUrl, // 分享图标
  114. success: function () {
  115. // 用户点击了分享后执行的回调函数
  116. console.log("updateTimelineShareData");
  117. tallType(0)
  118. },
  119. error: function (e) {
  120. console.error(e);
  121. }
  122. });
  123. //分享到朋友
  124. // wx.updateAppMessageShareData({
  125. // title: shareConfig.title, // 分享标题
  126. // desc: shareConfig.desc, // 分享描述
  127. // link: shareConfig.link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  128. // imgUrl: shareConfig.imgUrl, // 分享图标
  129. // dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
  130. // success: function () {
  131. // // 用户点击了分享后执行的回调函数
  132. // alert(shareConfig)
  133. // console.log("updateAppMessageShareData");
  134. // },
  135. // error: function (e) {
  136. // alert(e);
  137. // }
  138. // });
  139. wx.onMenuShareWechat({
  140. title: shareConfig.title, // 分享标题
  141. desc: shareConfig.desc, // 分享描述
  142. link: shareConfig.link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  143. imgUrl: shareConfig.imgUrl, // 分享图标
  144. success: function () {
  145. // alert("onMenuShareWechat:sucess");
  146. // 用户确认分享后执行的回调函数
  147. tallType(0)
  148. },
  149. cancel: function (e) {
  150. // 用户取消分享后执行的回调函数
  151. }
  152. });
  153. wx.onMenuShareAppMessage({
  154. title: shareConfig.title, // 分享标题
  155. desc: shareConfig.desc, // 分享描述
  156. link: shareConfig.link, // 分享链接
  157. imgUrl: shareConfig.imgUrl, // 分享图标
  158. success: function () {
  159. // 用户确认分享后执行的回调函数
  160. // alert(shareConfig)
  161. tallType(0)
  162. },
  163. cancel: function () {
  164. // 用户取消分享后执行的回调函数
  165. }
  166. });
  167. }catch (e) {
  168. }
  169. try {
  170. wx.updateAppMessageShareData({
  171. title: shareConfig.title, // 分享标题
  172. desc: shareConfig.desc, // 分享描述
  173. link: shareConfig.link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  174. imgUrl: shareConfig.imgUrl, // 分享图标
  175. success: function () {
  176. // 设置成功
  177. tallType(0)
  178. }
  179. });
  180. wx.updateTimelineShareData({
  181. title: shareConfig.title, // 分享标题
  182. link: shareConfig.link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  183. imgUrl: shareConfig.imgUrl, // 分享图标
  184. success: function () {
  185. // 用户点击了分享后执行的回调函数
  186. tallType(0)
  187. },
  188. error: function (e) {
  189. console.error(e);
  190. }
  191. });
  192. }catch (e) {
  193. }
  194. //
  195. // //自定义转发到微信
  196. // wx.invoke(
  197. // "shareWechatMessage", {
  198. // title: shareConfig.title, // 分享标题
  199. // desc: '', // 分享描述
  200. // link: shareConfig.link, // 分享链接
  201. // imgUrl: shareConfig.imgUrl // 分享封面
  202. // }, function(res) {
  203. // alert(res);
  204. // if (res.err_msg == "shareWechatMessage:ok") {
  205. // }
  206. // }
  207. // );
  208. }
  209. function tallType(params) { //告知推荐的行为类型。企业微信分享0 , 个人微信帮推荐1 , 点击话术库2
  210. post({
  211. url:api.tallType,
  212. data:{
  213. type:params
  214. }
  215. })
  216. }