微信开发者-分享接口控制(公众平台JSSDK)

问题:当在微信打开页面时,如果想隐藏分享,如下图,

微信JS-SDK说明文档-分享接口控制

在需要调用JS接口的页面引入如下JS文件,(支持https):http://res.wx.qq.com/open/js/jweixin-1.0.0.js

请注意,如果你的页面启用了https,务必引入 https://res.wx.qq.com/open/js/jweixin-1.0.0.js ,否则将无法在iOS9.0以上系统中成功使用JSSDK

 官方解析

 

wx.config({
    debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
    appId: '', // 必填,公众号的唯一标识
    timestamp: , // 必填,生成签名的时间戳
    nonceStr: '', // 必填,生成签名的随机串
    signature: '',// 必填,签名,见附录1
    jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});
wx.ready(function(){

    // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。
});

 

 

ps:因为只需要用到限制分享接口,所以其它接口暂时不做详细介绍

 

隐藏所有非基础按钮接口

wx.hideAllNonBaseMenuItem();
wx.showMenuItems({
menuList: ['menuItem:favorite','menuItem:share:appMessage','menuItem:share:timeline'] //显示收藏,发送朋友 分享到朋友圈
});
基本类

举报: "menuItem:exposeArticle"
调整字体: "menuItem:setFont"
日间模式: "menuItem:dayMode"
夜间模式: "menuItem:nightMode"
刷新: "menuItem:refresh"
查看公众号(已添加): "menuItem:profile"
查看公众号(未添加): "menuItem:addContact"
传播类

发送给朋友: "menuItem:share:appMessage"
分享到朋友圈: "menuItem:share:timeline"
分享到QQ: "menuItem:share:qq"
分享到Weibo: "menuItem:share:weiboApp"
收藏: "menuItem:favorite"
分享到FB: "menuItem:share:facebook"
分享到 QQ 空间/menuItem:share:QZone
保护类

编辑标签: "menuItem:editTag"
删除: "menuItem:delete"
复制链接: "menuItem:copyUrl"
原网页: "menuItem:originPage"
阅读模式: "menuItem:readMode"
在QQ浏览器中打开: "menuItem:openWithQQBrowser"
在Safari中打开: "menuItem:openWithSafari"
邮件: "menuItem:share:email"
一些特殊公众号: "menuItem:share:brand"
附录3-所有菜单项列表

 

 

<{if $from_weixin}>
<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js"></script>
<script>
    wx.config({
        debug: false,
        appId: '<{$signPackage.appId}>',
        timestamp: '<{$signPackage.timestamp}>',
        nonceStr: '<{$signPackage.nonceStr}>',
        signature: '<{$signPackage.signature}>',
        jsApiList: [
            // 所有要调用的 API 都要加到这个列表中
            'onMenuShareTimeline',
            'onMenuShareAppMessage',
            'onMenuShareQQ',
            'onMenuShareWeibo',
            'checkJsApi',
            'chooseImage',
            'previewImage',
            'uploadImage',
            'downloadImage',
            'openLocation',
            'getLocation',
            'scanQRCode',
            'hideMenuItems',
            'showMenuItems',
            'hideAllNonBaseMenuItem',
            'showAllNonBaseMenuItem',
            'hideOptionMenu',
            'showOptionMenu'
        ]
    });

    wx.ready(function() {

        wx.hideAllNonBaseMenuItem();
          wx.onMenuShareAppMessage({
    title: shareTitle, // 分享标题
    desc: descContent, // 分享描述
    link: lineLink, // 分享链接
    imgUrl: imgUrl, // 分享图标
    type: 'link', // 分享类型,music、video或link,不填默认为link
    dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空
    trigger: function (res) {
        //用户点击发送给朋友
    },
    success: function () {
        // 用户确认分享后执行的回调函数
        <{if $sharefriend_callback_url}>
            var $msgbox = $('#msgbox');
            $.getJSON('<{$sharefriend_callback_url}>',function(res){
                if(res.error){
                    $msgbox.find('.info').text(res.error);
                    $msgbox.modal();
                }
                else if(res.redirect){
                    $msgbox.find('.info').text(res.success);
                    $msgbox.modal({closeViaDimmer: false});
                    setTimeout(function(){location.href = res.redirect},1000);
                }
            });
        <{/if}>
    },
    cancel: function () {
        // 用户取消分享后执行的回调函数
    }
    });
    //分享到朋友圈
    wx.onMenuShareTimeline({
        title: shareTitle, // 分享标题
        link: lineLink, // 分享链接
        imgUrl: imgUrl, // 分享图标
        success: function () { 
            // 用户确认分享后执行的回调函数
            <{if $share_callback_url}>
            var $msgbox = $('#msgbox');
            $.getJSON('<{$share_callback_url}>',function(res){
                if(res.error){
                    $msgbox.find('.info').text(res.error);
                    $msgbox.modal();
                }
                else if(res.redirect){
                    $msgbox.find('.info').text(res.success);
                    $msgbox.modal({closeViaDimmer: false});
                    setTimeout(function(){location.href = res.redirect},1000);
                }
            });
            <{/if}>
        },
        cancel: function () { 
            // 用户取消分享后执行的回调函数
        }
    });
        

    });
</script>
<{/if}>

 

posted @ 2016-09-23 15:52  MAKE-IN-LEMON  阅读(984)  评论(0)    收藏  举报