share.js 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. function initShare(signature){
  2. var myloc = window.location.host;
  3. var ors = "";
  4. if("https:"==document.location.protocol){
  5. ors = "s"
  6. }
  7. myloc="http"+ors+"://"+myloc;
  8. if(typeof(signature) != "undefined" && signature != null && signature.length == 4){
  9. wx.config({
  10. debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
  11. appId: signature[0], // 必填,公众号的唯一标识
  12. timestamp:signature[1], // 必填,生成签名的时间戳
  13. nonceStr: signature[2], // 必填,生成签名的随机串
  14. signature: signature[3],// 必填,签名,见附录1
  15. jsApiList: ['onMenuShareTimeline', 'onMenuShareAppMessage','onMenuShareQQ','onMenuShareQZone','closeWindow'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
  16. });
  17. var randShareTitle = getShareText();
  18. var link = myloc+"/swordfish/about";
  19. var otherLink = link;
  20. var desc = "全国招标信息免费看,不遮挡";
  21. var otherDesc = desc;
  22. var url = "/wxswordfish/images/small_log_new.jpg";
  23. var encryptid = "";
  24. var subhref = window.location.href;
  25. wx.ready(function () {
  26. var triggerFlag = false;
  27. wx.onMenuShareTimeline({
  28. title: randShareTitle, // 分享标题
  29. link: otherLink, // 分享链接
  30. imgUrl: myloc+'/wxswordfish/images/small_log_new.jpg', // 分享图标
  31. trigger: function (res) {
  32. try{
  33. triggerFlag = true;
  34. afterShareTimeline("trigger");
  35. }catch(e){}
  36. },
  37. success: function () {
  38. if(!triggerFlag){
  39. try{
  40. afterShareTimeline("success");
  41. }catch(e){}
  42. }
  43. //alert('分享成功');
  44. },
  45. cancel: function () {
  46. if(!triggerFlag){
  47. try{
  48. afterShareTimeline("cancel");
  49. }catch(e){}
  50. }
  51. //alert('分享失败,或用户取消了');
  52. }
  53. });
  54. wx.onMenuShareAppMessage({
  55. title: randShareTitle, // 分享标题
  56. desc: desc, // 分享描述
  57. link: link, // 分享链接
  58. imgUrl: myloc+url, // 分享图标
  59. type: 'link', // 分享类型,music、video或link,不填默认为link'
  60. dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
  61. success: function () {
  62. //alert('分享成功');
  63. },
  64. cancel: function () {
  65. //alert('分享失败,或用户取消了');
  66. }
  67. });
  68. wx.onMenuShareQQ({
  69. title: randShareTitle, // 分享标题
  70. desc: otherDesc, // 分享描述
  71. link: otherLink, // 分享链接
  72. imgUrl: myloc+url, // 分享图标
  73. success: function () {
  74. // 用户确认分享后执行的回调函数
  75. },
  76. cancel: function () {
  77. // 用户取消分享后执行的回调函数
  78. }
  79. });
  80. wx.onMenuShareQZone({
  81. title: randShareTitle, // 分享标题
  82. desc: otherDesc, // 分享描述
  83. link: otherLink, // 分享链接
  84. imgUrl: myloc+url, // 分享图标
  85. success: function () {
  86. // 用户确认分享后执行的回调函数
  87. },
  88. cancel: function () {
  89. // 用户取消分享后执行的回调函数
  90. }
  91. });
  92. });
  93. wx.error(function(res){
  94. // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
  95. //alert("error auth");
  96. });
  97. }
  98. }
  99. //随机获取分享文案
  100. var ShareText = [
  101. "我和投标伙伴都在用剑鱼标讯找项目,推荐你也试试",
  102. "我用剑鱼标讯免费查到超多招标信息,推荐你也试试",
  103. "我收到了剑鱼标讯免费推送的招标信息,推荐你也试试",
  104. "发现了一个投标神器,推荐你也试试"
  105. ]
  106. function getShareText(){
  107. var Range = ShareText.length-1;
  108. var Rand = Math.random();
  109. var num = Math.round(Rand * Range);
  110. return ShareText[num];
  111. }