From surenkid, 11 Months ago, written in PHP.
Embed
  1. // 参考:Application/App/Controller/ShopController.class.php  37行
  2.  
  3.         //追入分享特效
  4.         $options['appid'] = self::$_wxappid;
  5.         $options['appsecret'] = self::$_wxappsecret;
  6.         $wx = new \Util\Wx\Wechat($options);
  7.  
  8.         //生成JSSDK实例
  9.         $opt['appid'] = self::$_wxappid;
  10.         $opt['token'] = $wx->checkAuth();
  11.         $opt['url'] = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
  12.  
  13.         $jssdk = new \Util\Wx\Jssdk($opt);
  14.         $jsapi = $jssdk->getSignPackage();
  15.         if (!$jsapi) {
  16.             die('未正常获取数据!');
  17.         }
  18.         $this->assign('jsapi', $jsapi);
  19.  
  20. // 参考:Tpl/App/Shop_index.html  305行
  21.  
  22.    <!--新版分享特效-->
  23.     <script src="https://res.wx.qq.com/open/js/jweixin-1.4.0.js"></script>
  24.     <script>
  25.     //var share_url = "{$_SESSION['WAP']['shopset']['url']}/App/Shop/index/ppid/{$_SESSION['WAP']['vipid']}/";
  26.     var share_url = "https://{$_SERVER['HTTP_HOST']}__ROOT__/App/Shop/index/ppid/{$_SESSION['WAP']['vipid']}/";
  27.     var share_title = "{$_SESSION['WAP']['shopset']['name']}";
  28.     var share_content = "{$_SESSION['WAP']['shopset']['summary']}";//"{$_SESSION['SET']['wxsummary']}";
  29.     var share_img = "{$_SESSION['WAP']['shopset']['url']}{$_SESSION['WAP']['shopset']['sharepic']}";
  30.  
  31.     wx.config({
  32.         debug: false,
  33.         appId: "{$jsapi['appId']}",
  34.         timestamp: "{$jsapi['timestamp']}",
  35.         nonceStr: "{$jsapi['nonceStr']}",
  36.         signature: "{$jsapi['signature']}",
  37.         jsApiList: [
  38.             'checkJsApi',
  39.             'onMenuShareTimeline',
  40.             'onMenuShareAppMessage',
  41.             'onMenuShareQQ',
  42.             'onMenuShareWeibo',
  43.             'hideMenuItems',
  44.             'showMenuItems',
  45.             'hideAllNonBaseMenuItem',
  46.             'showAllNonBaseMenuItem',
  47.             //      'translateVoice',
  48.             //      'startRecord',
  49.             //      'stopRecord',
  50.             //      'onRecordEnd',
  51.             //      'playVoice',
  52.             //      'pauseVoice',
  53.             //      'stopVoice',
  54.             //      'uploadVoice',
  55.             //      'downloadVoice',
  56.             //      'chooseImage',
  57.             //      'previewImage',
  58.             //      'uploadImage',
  59.             //      'downloadImage',
  60.             //      'getNetworkType',
  61.             //      'openLocation',
  62.             //      'getLocation',
  63.             //      'hideOptionMenu',
  64.             //      'showOptionMenu',
  65.             //      'closeWindow',
  66.             //      'scanQRCode',
  67.             //      'chooseWXPay',
  68.             //      'openProductSpecificView',
  69.             //      'addCard',
  70.             //      'chooseCard',
  71.             //      'openCard'
  72.         ]
  73.     });
  74.  
  75.     wx.ready(function() {
  76.         //开启菜单
  77.         wx.showOptionMenu();
  78.         //隐藏菜单
  79.         //wx.hideOptionMenu();
  80.         //分享给朋友
  81.         wx.onMenuShareAppMessage({
  82.             title: share_title,
  83.             desc: share_content,
  84.             link: share_url,
  85.             imgUrl: share_img,
  86.             trigger: function(res) {
  87.                 //alert('用户点击发送给朋友');
  88.             },
  89.             success: function(res) {
  90.                 //alert('已分享');
  91.             },
  92.             cancel: function(res) {
  93.                 //alert('已取消');
  94.             },
  95.             fail: function(res) {
  96.                 //alert(JSON.stringify(res));
  97.             }
  98.         });
  99.         //分享到朋友圈
  100.         wx.onMenuShareTimeline({
  101.             title: share_title,
  102.             link: share_url,
  103.             imgUrl: share_img,
  104.             trigger: function(res) {
  105.                 //alert('用户点击分享到朋友圈');
  106.             },
  107.             success: function(res) {
  108.                 //alert('已分享');
  109.             },
  110.             cancel: function(res) {
  111.                 //alert('已取消');
  112.             },
  113.             fail: function(res) {
  114.                 //alert(JSON.stringify(res));
  115.             }
  116.         });
  117.         //分享到QQ
  118.         wx.onMenuShareQQ({
  119.             title: share_title,
  120.             desc: share_content,
  121.             link: share_url,
  122.             imgUrl: share_img,
  123.             trigger: function(res) {
  124.                 //alert('用户点击分享到QQ');
  125.             },
  126.             complete: function(res) {
  127.                 //alert(JSON.stringify(res));
  128.             },
  129.             success: function(res) {
  130.                 //alert('已分享');
  131.             },
  132.             cancel: function(res) {
  133.                 //alert('已取消');
  134.             },
  135.             fail: function(res) {
  136.                 //alert(JSON.stringify(res));
  137.             }
  138.         });
  139.     });
  140.     </script>