微信瀏覽器內建了javascript私有物件WeixinJSBridge,可以實現發送給朋友、分享到朋友圈、分享到微博等功能。
<script> var imgUrl = "图片地址"; var lineLink = "当前网址"; var descContent = "描述"; var shareTitle = '标题'; var appid = ''; function shareFriend() { WeixinJSBridge.invoke('sendAppMessage',{ "appid": appid, "img_url": imgUrl, "img_width": "200", "img_height": "200", "link": lineLink, "desc": descContent, "title": shareTitle }, function(res) { //_report('send_msg', res.err_msg); }) } function shareTimeline() { WeixinJSBridge.invoke('shareTimeline',{ "img_url": imgUrl, "img_width": "200", "img_height": "200", "link": lineLink, "desc": descContent, "title": shareTitle }, function(res) { //_report('timeline', res.err_msg); }); } function shareWeibo() { WeixinJSBridge.invoke('shareWeibo',{ "content": descContent, "url": lineLink, }, function(res) { //_report('weibo', res.err_msg); }); } // 当微信内置浏览器完成内部初始化后会触发WeixinJSBridgeReady事件。 document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() { // 发送给好友 WeixinJSBridge.on('menu:share:appmessage', function(argv){ shareFriend(); }); // 分享到朋友圈 WeixinJSBridge.on('menu:share:timeline', function(argv){ shareTimeline(); }); // 分享到微博 WeixinJSBridge.on('menu:share:weibo', function(argv){ shareWeibo(); }); }, false); </script>
在微信公眾平台前端網頁上加入分享到朋友圈,追蹤微信等按鈕
微信公眾平台開始支持前端網頁,大家可能看到很多網頁上都有分享到朋友圈,關注微信等按鈕,點擊它們都會彈出一個窗口讓你分享和關注,這個是怎麼實現的呢?今天就來跟大家講解下如何在微信公眾平台前端網頁上加入分享到朋友圈,關注微信號等按鈕。
微信內嵌瀏覽器
透過Mac 遠端除錯iPhone 上微信自己的網頁,我們可以發現微信內嵌瀏覽器定義了一個私有JavaScript 物件:WeixinJSBridge,透過操作這個物件的相關方法可以實現分享到微信朋友圈,和判斷一個微訊號的關注狀態以及實現關注指定微訊號等功能。
分享到朋友圈
function weixinShareTimeline(title,desc,link,imgUrl){ WeixinJSBridge.invoke('shareTimeline',{ "img_url":imgUrl, //"img_width":"640", //"img_height":"640", "link":link, "desc": desc, "title":title }); }
寄給好友
function weixinSendAppMessage(title,desc,link,imgUrl){ WeixinJSBridge.invoke('sendAppMessage',{ //"appid":appId, "img_url":imgUrl, //"img_width":"640", //"img_height":"640", "link":link, "desc":desc, "title":title }); }
分享到騰訊微博
function weixinShareWeibo(title,link){ WeixinJSBridge.invoke('shareWeibo',{ "content":title + link, "url":link }); }
注意指定的微訊號
function weixinAddContact(name){ WeixinJSBridge.invoke("addContact", {webtype: "1",username: name}, function(e) { WeixinJSBridge.log(e.err_msg); //e.err_msg:add_contact:added 已经添加 //e.err_msg:add_contact:cancel 取消添加 //e.err_msg:add_contact:ok 添加成功 if(e.err_msg == 'add_contact:added' || e.err_msg == 'add_contact:ok'){ //关注成功,或者已经关注过 } }) }