jq微信分享

(function() {
    var weChat = {
        init: function() {
            this.getData();        
        },
        getData: function() {
            $.ajax({
                type: "post",
                url: "微信config接口地址",
                dataType: "json",
                data: {
                    appid: "一个微信公众号只有一个",
                    url: window.location.href
                },
                success: function(res) {
                    //console.log(res)
                    if(res.code == 0){
                        weChat.wxConfig(res.data);
                    }
                }
            });
        },
        wxConfig: function(res) {
            wx.config({
                debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
                appId: '一个微信号只有一个', // 必填,公众号的唯一标识
                timestamp: res['timestamp'], // 必填,生成签名的时间戳
                nonceStr: res['noncestr'], // 必填,生成签名的随机串
                signature: res['signature'], // 必填,签名,见附录1
                jsApiList: ['checkJsApi',
                    'onMenuShareTimeline',
                    'onMenuShareAppMessage',
                    'onMenuShareQQ',
                    'onMenuShareQZone'
                ] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
            });
            var shareDetail = {
                title: "自定义",
                imgUrl: "自定义",
                desc: "自定义"
            }
            wx.ready(function() {
                //分享到朋友圈
                wx.onMenuShareTimeline({
                    title: shareDetail.title, // 分享标题
                    link: window.location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                    imgUrl: shareDetail.imgUrl, // 分享图标
                    desc: shareDetail.desc,
                    success: function(res) {
                        // 用户确认分享后执行的回调函数
                    },
                    cancel: function(res) {
                        // 用户取消分享后执行的回调函数
                    }
                });
                //分享给朋友
                wx.onMenuShareAppMessage({
                    title: shareDetail.title, // 分享标题
                    link: window.location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                    imgUrl: shareDetail.imgUrl, // 分享图标
                    desc: shareDetail.desc,
                    success: function(res) {
                        // 用户确认分享后执行的回调函数
                        //alert("share success")
                    },
                    cancel: function(res) {
                        // 用户取消分享后执行的回调函数
                    }
                });
                //分享到QQ
                wx.onMenuShareQQ({
                    title: shareDetail.title, // 分享标题
                    link: window.location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                    imgUrl: shareDetail.imgUrl, // 分享图标
                    desc: shareDetail.desc,
                    success: function(res) {
                        // 用户确认分享后执行的回调函数
                    },
                    cancel: function(res) {
                        // 用户取消分享后执行的回调函数
                    }
                });
                //分享到腾讯微博
                wx.onMenuShareWeibo({
                    title: shareDetail.title, // 分享标题
                    link: window.location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                    imgUrl: shareDetail.imgUrl, // 分享图标
                    desc: shareDetail.desc,
                    success: function(res) {
                        // 用户确认分享后执行的回调函数
                    },
                    cancel: function(res) {
                        // 用户取消分享后执行的回调函数
                    }
                });
                //分享到QQ空间
                wx.onMenuShareQZone({
                    title: shareDetail.title, // 分享标题
                    link: window.location.href, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
                    imgUrl: shareDetail.imgUrl, // 分享图标
                    desc: shareDetail.desc,
                    success: function(res) {
                        // 用户确认分享后执行的回调函数
                    },
                    cancel: function(res) {
                        // 用户取消分享后执行的回调函数
                    }
                });
            });
        }
    }
    weChat.init();
})()

 

转载于:https://www.cnblogs.com/lhl66/p/7701217.html

您可以使用 `jQuery` 和 `Ajax` 实现微信公众号模板消息的发送。 以下是一个简单的示例: 1. HTML 页面中创建一个表单,包含发送模板消息所需的参数: ```html <form id="send-form"> <input type="hidden" name="openid" value="..."> <input type="hidden" name="template_id" value="..."> <input type="hidden" name="url" value="..."> <input type="hidden" name="data" value='{"key1": {"value": "...", "color": "#173177"}, "key2": {"value": "...", "color": "#173177"}}'> <button type="submit">发送模板消息</button> </form> ``` 2. 使用 `jQuery` 监听表单的提交事件,发送 `Ajax` 请求: ```javascript $(document).on('submit', '#send-form', function(e) { e.preventDefault(); // 阻止表单默认提交行为 $.ajax({ url: 'send.php', // 发送模板消息的 PHP 接口地址 type: 'POST', data: $(this).serialize(), dataType: 'json', success: function(resp) { if (resp.errcode === 0) { alert('发送成功'); } else { alert('发送失败:' + resp.errmsg); } }, error: function(xhr, status, err) { alert('发送失败:' + err); } }); }); ``` 3. 在服务器端编写 `send.php` 接口,使用 `curl` 发送模板消息: ```php <?php $access_token = 'YOUR_ACCESS_TOKEN'; // 替换为实际的 access_token $openid = $_POST['openid']; $template_id = $_POST['template_id']; $url = $_POST['url']; $data = json_decode($_POST['data'], true); $url = 'https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=' . $access_token; $post_data = [ 'touser' => $openid, 'template_id' => $template_id, 'url' => $url, 'data' => $data, ]; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($post_data)); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); echo $response; ``` 注意:您需要替换 `$access_token` 为实际的 access_token。此外,上述示例只是一个简单的参考,实际应用中还需要进行参数验证、错误处理等操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值