微信内部浏览器私有接口  

来源:绿萝科技 浏览次数:

  微信网页进入,右上角有三个小点,没错,我们用到的就是它!我们只要通过将小点列表下的按钮进行自定义,就可以随心所欲的分享我们自己的内容了。
  注意:(WeixinJSBridge只能在微信内打开的网页有效)
  按钮一之------发送给好友
  function sendMessage(){  WeixinJSBridge.on('menu:share:appmessage', function(argv){ alert("发送给好友"); }); }
  这样,只要在某处调用 sendMessage  函数就可以改变发送好友的按钮响应了,再点击,便会弹出“发送给好友字符串”,是不是很简单。
  分享函数
  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进行绑定。
  如下:
  if(document.addEventListener){
  document.addEventListener('WeixinJSBridgeReady', sendMessage, false);  }else if(document.attachEvent){
  document.attachEvent('WeixinJSBridgeReady'   , sendMessage);    document.attachEvent('onWeixinJSBridgeReady' , sendMessage);  }
  下面还有几个小功能:
  1.WeixinJSBridge.call('hideToolbar');                      //隐藏右下面工具栏
  2.WeixinJSBridge.call('showToolbar');                     //显示右下面工具栏
  3.WeixinJSBridge.call('hideOptionMenu');                 //隐藏右上角三个点按钮。
  4.WeixinJSBridge.call('showOptionMenu');                //显示右上角三个点按钮。
上一篇:没有了
下一篇:关于网站布局
您可能对以下内容感兴趣:
关闭
029-8736 5389 工作日:9:00-18:00
周 六:9:00-18:00