基于js實(shí)現(xiàn)微信發(fā)送好友如何分享到朋友圈、微博
微信瀏覽器內(nèi)置了javascript私有對(duì)象WeixinJSBridge,可以實(shí)現(xiàn)發(fā)送給朋友、分享到朋友圈、分享到微博等功能。
<script>
var imgUrl = "圖片地址";
var lineLink = "當(dāng)前網(wǎng)址";
var descContent = "描述";
var shareTitle = '標(biāo)題';
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);
});
}
// 當(dāng)微信內(nèi)置瀏覽器完成內(nèi)部初始化后會(huì)觸發(fā)WeixinJSBridgeReady事件。
document.addEventListener('WeixinJSBridgeReady', function onBridgeReady() {
// 發(fā)送給好友
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>
在微信公眾平臺(tái)前端網(wǎng)頁(yè)上添加分享到朋友圈,關(guān)注微信等按鈕
微信公眾平臺(tái)開始支持前端網(wǎng)頁(yè),大家可能看到很多網(wǎng)頁(yè)上都有分享到朋友圈,關(guān)注微信等按鈕,點(diǎn)擊它們都會(huì)彈出一個(gè)窗口讓你分享和關(guān)注,這個(gè)是怎么實(shí)現(xiàn)的呢?今天就給大家講解下如何在微信公眾平臺(tái)前端網(wǎng)頁(yè)上添加分享到朋友圈,關(guān)注微信號(hào)等按鈕。
微信內(nèi)嵌瀏覽器
通過 Mac 遠(yuǎn)程調(diào)試 iPhone 上微信自己的網(wǎng)頁(yè),我們可以發(fā)現(xiàn)微信內(nèi)嵌瀏覽器定義了一個(gè)私有 JavaScript 對(duì)象:WeixinJSBridge,通過操作這個(gè)對(duì)象的相關(guān)方法可以實(shí)現(xiàn)分享到微信朋友圈,和判斷一個(gè)微信號(hào)的關(guān)注狀態(tài)以及實(shí)現(xiàn)關(guān)注指定微信號(hào)等功能。
分享到朋友圈
function weixinShareTimeline(title,desc,link,imgUrl){
WeixinJSBridge.invoke('shareTimeline',{
"img_url":imgUrl,
//"img_width":"640",
//"img_height":"640",
"link":link,
"desc": desc,
"title":title
});
}
發(fā)送給好友
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
});
}
關(guān)注指定的微信號(hào)
function weixinAddContact(name){
WeixinJSBridge.invoke("addContact", {webtype: "1",username: name}, function(e) {
WeixinJSBridge.log(e.err_msg);
//e.err_msg:add_contact:added 已經(jīng)添加
//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'){
//關(guān)注成功,或者已經(jīng)關(guān)注過
}
})
}
相關(guān)文章
d3.js 地鐵軌道交通項(xiàng)目實(shí)戰(zhàn)
這篇文章主要介紹了d3.js 地鐵軌道交通項(xiàng)目實(shí)戰(zhàn),本文通過實(shí)例代碼項(xiàng)目截圖給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11
JS實(shí)現(xiàn)遮罩層效果的簡(jiǎn)單實(shí)例
這篇文章介紹了JS實(shí)現(xiàn)遮罩層效果的簡(jiǎn)單實(shí)例,有需要的朋友可以參考一下2013-11-11
window.parent調(diào)用父框架時(shí) ie跟火狐不兼容問題
window.parent調(diào)用父框架時(shí),ie跟火狐不兼容問題!2009-07-07
JS實(shí)現(xiàn)從網(wǎng)頁(yè)頂部掉下彈出層效果的方法
這篇文章主要介紹了JS實(shí)現(xiàn)從網(wǎng)頁(yè)頂部掉下彈出層效果的方法,實(shí)例分析了javascript創(chuàng)建彈出窗口及窗口掉落與抖動(dòng)效果實(shí)現(xiàn)方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08
javascript 數(shù)組精簡(jiǎn)技巧小結(jié)
本文給大家分享了13個(gè)非常常用的JavaScript數(shù)組操作的小技巧,有需要的小伙伴可以來(lái)看看,個(gè)人十分推薦.2020-02-02
移動(dòng)端基礎(chǔ)事件總結(jié)與應(yīng)用
本文主要介紹了移動(dòng)端基礎(chǔ)事件總結(jié)與應(yīng)用,具有一定的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-01-01
JavaScript 閉包機(jī)制詳解及實(shí)例代碼
這篇文章主要介紹了JavaScript 閉包機(jī)制詳解及實(shí)例代碼的相關(guān)資料,需要的朋友可以參考下2016-10-10

