问题:当在微信打开页面时,如果想隐藏分享,如下图,
微信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"
<{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}>