基于js實現(xiàn)微信發(fā)送好友如何分享到朋友圈、微博
微信瀏覽器內(nèi)置了javascript私有對象WeixinJSBridge,可以實現(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)部初始化后會觸發(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>
在微信公眾平臺前端網(wǎng)頁上添加分享到朋友圈,關(guān)注微信等按鈕
微信公眾平臺開始支持前端網(wǎng)頁,大家可能看到很多網(wǎng)頁上都有分享到朋友圈,關(guān)注微信等按鈕,點擊它們都會彈出一個窗口讓你分享和關(guān)注,這個是怎么實現(xiàn)的呢?今天就給大家講解下如何在微信公眾平臺前端網(wǎng)頁上添加分享到朋友圈,關(guān)注微信號等按鈕。
微信內(nèi)嵌瀏覽器
通過 Mac 遠(yuǎn)程調(diào)試 iPhone 上微信自己的網(wǎng)頁,我們可以發(fā)現(xiàn)微信內(nèi)嵌瀏覽器定義了一個私有 JavaScript 對象:WeixinJSBridge,通過操作這個對象的相關(guān)方法可以實現(xiàn)分享到微信朋友圈,和判斷一個微信號的關(guān)注狀態(tài)以及實現(xiàn)關(guān)注指定微信號等功能。
分享到朋友圈
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)注指定的微信號
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)文章
JavaScript?中的?parseInt()?函數(shù)詳解
parseInt函數(shù)將其第一個參數(shù)轉(zhuǎn)換為一個字符串,對該字符串進(jìn)行解析,然后返回一個整數(shù)或?NaN,這篇文章主要介紹了JavaScript?的?parseInt()?函數(shù),需要的朋友可以參考下2023-05-05
Highcharts使用簡例及異步動態(tài)讀取數(shù)據(jù)
Highcharts 是一個用純JavaScript編寫的一個圖表庫, 能夠很簡單便捷的在web網(wǎng)站或是web應(yīng)用程序添加有交互性的圖表,并且免費提供給個人學(xué)習(xí)、個人網(wǎng)站和非商業(yè)用途使用,通過本文給大家介紹Highcharts使用簡例及異步動態(tài)讀取數(shù)據(jù)的相關(guān)知識,感興趣的朋友一起學(xué)習(xí)吧2015-12-12
前端JavaScript處理小數(shù)精度問題的最佳實踐教程
在JavaScript開發(fā)過程中,小數(shù)精度問題是一個常見的難題,本文介紹了兩種解決小數(shù)精度問題的方法,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-10-10
JS前端開發(fā)判斷是否是手機端并跳轉(zhuǎn)操作(小結(jié))
這篇文章主要介紹了JS前端開發(fā)判斷是否是手機端并跳轉(zhuǎn)操作,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2017-02-02
Bootstrap中表單控件狀態(tài)(驗證狀態(tài))
這篇文章主要介紹了Bootstrap中表單控件狀態(tài)(驗證狀態(tài)) 的相關(guān)資料,還給大家介紹了在Bootstrap框架中提供的機制驗證效果,非常不錯,需要的朋友可以參考下2016-08-08
JS開發(fā)接入?deepseek?實現(xiàn)AI智能問診
本文介紹了如何使用DeepSeek?API在UniApp項目中實現(xiàn)智能問診功能,代碼示例展示了如何構(gòu)建請求并處理響應(yīng),本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2025-02-02

