微信的WeixinJSBridge还是很厉害的,虽然官方文档只公布了3个功能,但是还内置的很多功能没公布,但是存在。今天就好好和大家聊聊

功能1------发送给好友

    代码如下:

function sendMessage(){

WeixinJSBridge.on('menu:share:appmessage', function(argv){ alert("发送给好友"); });

}

  这样,只要在某处调用 sendMessage 函数就可以改变发送好友的按钮响应了,再点击,便会弹出“发送给好友字符串”

 功能2-----分享

  

WeixinJSBridge.invoke('sendAppMessage',{
"appid":"", //appid 设置空就好了。
"img_url": imgUrl, //分享时所带的图片路径
"img_width": "120", //图片宽度
"img_height": "120", //图片高度
"link":url, //分享附带链接地址
"desc":"我是一个介绍", //分享内容介绍
"title":"标题,再简单不过了。"
}, function(res){/*** 回调函数,最好设置为空 ***/});

  

注意,如果将这个微信私有函数单独拿出来调用,道理上是讲的通,但是!第一次打开页面直接调用它的话,无论如何是没有任何反映的,必须要手动,点一下右上角分享给好友按钮,待弹出一次通讯录之后,返回来在直接使用,就没有任何问题,似乎内部初始化什么东西一样。所以建议直接嵌入到上面那个 绑定方法中。

如下:

function sendMessage(){
WeixinJSBridge.on('menu:share:appmessage', function(argv){ WeixinJSBridge.invoke('sendAppMessage',{ "appid":"", //appid 设置空就好了。
"img_url": imgUrl, //分享时所带的图片路径
"img_width": "120", //图片宽度
"img_height": "120", //图片高度
"link":url, //分享附带链接地址
"desc":"我是一个介绍", //分享内容介绍
"title":"标题,再简单不过了。"
}, function(res){/*** 回调函数,最好设置为空 ***/ }); });
}

  

这样,你在点击发送给好友按钮,就可以直接弹出通讯录选择 ‘单个' 好友进行分享。

同理,分享到朋友圈也是调用 invoke 私有函数,只是按钮绑定名称不同而已。

代码如下:

function sendMessage(){

......//此处省略发送给好友代码

WeixinJSBridge.on('menu:share:timeline', function(argv){

WeixinJSBridge.invoke('shareTimeline',{

"appid":"", //appid 设置空就好了。
"img_url": imgUrl, //分享时所带的图片路径
"img_width": "120", //图片宽度
"img_height": "120", //图片高度
"link":url, //分享附带链接地址
"desc":"我是一个介绍", //分享内容介绍
"title":"标题,再简单不过了。"
}, function(res){/*** 回调函数,最好设置为空 ***/}); }); }); }

  

注意,on绑定的是 “menu:share:timeline” 不是 "menu:share:appmessage"。invoke里面也是。

还一个微博分享,我没试过,不知道有没有用,想玩的试试,一切分享都是调用当前微信帐号分享。

代码如下:

WeixinJSBridge.on('menu:share:weibo', function(argv){
WeixinJSBridge.invoke('shareWeibo',{
"content":dataForWeixin.title+' '+dataForWeixin.url,
"url":dataForWeixin.url
}, function(res){});
});

  如果微信浏览器内部尚未初始化,所有的接口都会是undefined。为了避免进去马上就调用出错,获取微信初始化完成响应事件,初始化完成调用sendMessage进行绑定。

   功能3---------隐藏-关闭浏览器

WeixinJSBridge.call('hideToolbar'); //隐藏右下面工具栏

WeixinJSBridge.call('showToolbar'); //显示右下面工具栏

WeixinJSBridge.call('hideOptionMenu'); //隐藏右上角三个点按钮。

WeixinJSBridge.call('showOptionMenu'); //显示右上角三个点按钮。

WeixinJSBridge.call('closeWindow');//关闭当前窗口

  

最新文章

  1. 3.C#面向对象基础聊天机器人
  2. 想一想social VR might just work
  3. 如何用BarTender批量打印标签
  4. 【转帖】自助式BI的崛起:三张图看清商业智能和大数据分析市场趋势
  5. BZOJ1525 : [POI2006]Zos
  6. 下拉刷新控件(3)系统自带的下拉刷新控件SwipeRefreshLayout(推荐*)
  7. Java之姐妹素数
  8. mybatis入门,基本案例和xml讲解
  9. 玩转Web之Jsp(三)-----Jsp+SQLServer 用sql语句实现分页
  10. Sqoop 将hdfs上的文件导入到oracle中,关于date类型的问题
  11. 用Stax方式处理xml
  12. ListView控件详解
  13. Kafka OffsetMonitor:监控消费者和延迟的队列
  14. Flash Builder4.7安装破解
  15. FreeSql 过滤器使用介绍
  16. [Swift]LeetCode1014. 最佳观光组合 | Best Sightseeing Pair
  17. 【BZOJ4325】【NOIP2015】斗地主 搜索
  18. VS2010 Chart控件(一)Chart控件在ASP.NET网站中的应用示例详解(C#语言)
  19. 第二篇 界面开发 (Android学习笔记)
  20. MySQL 5.5主从复制(Replication)

热门文章

  1. Vue父子组件相互传值及调用方法的方案
  2. Qt休眠
  3. 自定义注解实现简单的orm映射框架
  4. springboot2.x 使用redis (入门)
  5. 配置linux命令行界面的 文件显示颜色
  6. 全栈项目|小书架|服务器端-NodeJS+Koa2 实现书籍详情接口
  7. MyBatis返回结果类型为Boolean
  8. ASP.NET Nlog上手练习小例子
  9. The XOR Largest Pair(tire树)
  10. pandas-11 TypeError: ufunc 'isnan' not supported for the input types, and the inputs could not be safely错误解决方法