util.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. function isWeixin() { //判断是否是微信
  2. var ua = navigator.userAgent.toLowerCase();
  3. return ua.match(/MicroMessenger/i) == "micromessenger";
  4. };
  5. function getSystem() {
  6. var u = navigator.userAgent;
  7. var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1;
  8. var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/);
  9. if (isAndroid) {
  10. return 'Android'
  11. } else if (isiOS) {
  12. return 'IOS'
  13. }
  14. }
  15. $(function () {
  16. $('.js-downUrl').on('click', function (e) {
  17. var goUrl = $(this).attr('goUrl') || 'javascript:void(0);'
  18. if (isWeixin()) {
  19. if ($('.wxDown').length) {
  20. $('.wxDown').show()
  21. return false;
  22. }
  23. var system = getSystem()
  24. var label = ''
  25. var html = ''
  26. if (system === 'Android') {
  27. label = '选择在游览器中打开'
  28. } else if (system === 'IOS') {
  29. label = '选择<img class="img2" src="./image/icon_safari.png" alt="">在safari中打开'
  30. }
  31. var html = '<div class="wxDown">\n' +
  32. ' <div class="wxDown_cnt">\n' +
  33. ' <img class="topicon" src="./image/sanjiaox.png" alt="">\n' +
  34. ' <div class="item">\n' +
  35. ' <i class="ids">1</i>\n' +
  36. ' <p class="text">点击右上角 <img class="img1" src="./image/dian.png" alt=""> 按钮</p>\n' +
  37. ' </div>\n' +
  38. ' <div class="item">\n' +
  39. ' <i class="ids">2</i>\n' +
  40. ' <p class="text">'+label+'</p>\n' +
  41. ' </div>\n' +
  42. ' </div>\n' +
  43. '</div>'
  44. $('body').append(html)
  45. $('.wxDown').on('click', function () {
  46. $('.wxDown').hide()
  47. })
  48. } else {
  49. if (! $('#js-created-a').length) {
  50. $('body').append('<a href="' + goUrl + '" id="js-created-a"></a>')
  51. } else {
  52. $('#js-created-a').attr('href', goUrl)
  53. }
  54. $('#js-created-a')[0].click()
  55. }
  56. return false;
  57. })
  58. // var reg = new RegExp('wx_app_id=([^&]*)[&|$]', 'g')
  59. // var exp = reg.exec(window.location.search)
  60. var wxAppId = $('#wxAppId').val()
  61. var shareTitle = $('#shareTitle').val()
  62. var shareDesc = $('#shareDesc').val()
  63. var shareImage = $('#shareImage').val()
  64. if (wxAppId) {
  65. $.ajax({
  66. url: 'https://miniapi.beibaoyx.com/share/index',
  67. data: {
  68. wx_app_id: wxAppId,
  69. share_url: window.location.origin + window.location.pathname + window.location.search
  70. },
  71. dataType: 'jsonp',
  72. success: function (res) {
  73. if (res.code === 200) {
  74. wx.config({
  75. appId: res.data.wx_app_id,
  76. timestamp: res.data.timestamp,
  77. nonceStr: res.data.nonceStr,
  78. signature: res.data.signature,
  79. jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareWeibo']
  80. })
  81. wx.ready(function () {
  82. // “分享给朋友”及“分享到QQ”
  83. wx.updateAppMessageShareData({
  84. title: shareTitle, // 分享标题
  85. desc: shareDesc, // 分享描述
  86. link: window.location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  87. imgUrl: shareImage // 分享图标
  88. }, function(res) {
  89. //这里是回调函数
  90. })
  91. // “分享到朋友圈”及“分享到QQ空间”
  92. wx.updateTimelineShareData({
  93. title: shareTitle, // 分享标题
  94. link: window.location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  95. imgUrl: shareImage // 分享图标
  96. }, function(res) {
  97. //这里是回调函数
  98. })
  99. // “分享到腾讯微博”
  100. wx.onMenuShareWeibo({
  101. title: shareTitle, // 分享标题
  102. desc: shareDesc, // 分享描述
  103. link: window.location.href, // 分享链接
  104. imgUrl: shareImage, // 分享图标
  105. success: function () {
  106. // 用户确认分享后执行的回调函数
  107. },
  108. cancel: function () {
  109. // 用户取消分享后执行的回调函数
  110. }
  111. })
  112. })
  113. }
  114. }
  115. })
  116. }
  117. })