微信浏覽器內置了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'){ //關注成功,或者已經關注過 } }) }