其實微信內(nèi)置瀏覽器私有接口WeixinJSBridge的

2024-02-07    分類: 網(wǎng)站建設(shè)

微信網(wǎng)頁進入,右上角有三個小點,沒錯,我們用到的就是它!我們只要通過將小點列表下的按鈕進行自定義,就可以隨心所欲的分享我們自己的內(nèi)容了。

注意:(WeixinJSBridge只能在微信內(nèi)打開的網(wǎng)頁有效)

按鈕一之------發(fā)送給好友 復(fù)制代碼 代碼如下:

function sendMessage(){ WeixinJSBridge.on('menu:share:appmessage', function(argv){ alert("發(fā)送給好友"); }); } 這樣,只要在某處調(diào)用 sendMessage 函數(shù)就可以改變發(fā)送好友的按鈕響應(yīng)了,再點擊,便會彈出“發(fā)送給好友字符串”,是不是很簡單。

分享函數(shù)

復(fù)制代碼 代碼如下:

WeixinJSBridge.invoke('sendAppMessage',{ "appid":"", //appid 設(shè)置空就好了。 "img_url": imgUrl, //分享時所帶的圖片路徑 "img_width": "120", //圖片寬度 "img_height": "120", //圖片高度 "link":url, //分享附帶鏈接地址 "desc":"我是一個介紹", //分享內(nèi)容介紹 "title":"標題,再簡單不過了。" }, function(res){/*** 回調(diào)函數(shù),最好設(shè)置為空 ***/}); 注意,如果將這個微信私有函數(shù)單獨拿出來調(diào)用,道理上是講的通,但是!第一次打開頁面直接調(diào)用它的話,無論如何是沒有任何反映的,必須要手動,點一下右上角分享給好友按鈕,待彈出一次通訊錄之后,返回來在直接使用,就沒有任何問題,似乎內(nèi)部初始化什么東西一樣。所以建議直接嵌入到上面那個 綁定方法中。

如下:

復(fù)制代碼 代碼如下:

function sendMessage(){ WeixinJSBridge.on('menu:share:appmessage', function(argv){ WeixinJSBridge.invoke('sendAppMessage',{ "appid":"", //appid 設(shè)置空就好了。 "img_url": imgUrl, //分享時所帶的圖片路徑 "img_width": "120", //圖片寬度 "img_height": "120", //圖片高度 "link":url, //分享附帶鏈接地址 "desc":"我是一個介紹", //分享內(nèi)容介紹 "title":"標題,再簡單不過了。" }, function(res){/*** 回調(diào)函數(shù),最好設(shè)置為空 ***/ }); }); }

這樣,你在點擊發(fā)送給好友按鈕,就可以直接彈出通訊錄選擇 ‘單個' 好友進行分享。

同理,分享到朋友圈也是調(diào)用 invoke 私有函數(shù),只是按鈕綁定名稱不同而已。

復(fù)制代碼 代碼如下:

function sendMessage(){ ......//此處省略發(fā)送給好友代碼 WeixinJSBridge.on('menu:share:timeline', function(argv){ WeixinJSBridge.invoke('shareTimeline',{ "appid":"", //appid 設(shè)置空就好了。 "img_url": imgUrl, //分享時所帶的圖片路徑 "img_width": "120", //圖片寬度 "img_height": "120", //圖片高度 "link":url, //分享附帶鏈接地址 "desc":"我是一個介紹", //分享內(nèi)容介紹 "title":"標題,再簡單不過了。" }, function(res){/*** 回調(diào)函數(shù),最好設(shè)置為空 ***/}); }); }); } 注意,on綁定的是 “menu:share:timeline” 不是 "menu:share:appmessage"。invoke里面也是。

還一個微博分享,我沒試過,不知道有沒有用,想玩的試試,一切分享都是調(diào)用當前微信帳號分享。

復(fù)制代碼 代碼如下:

WeixinJSBridge.on('menu:share:weibo', function(argv){ WeixinJSBridge.invoke('shareWeibo',{ "content":dataForWeixin.title+' '+dataForWeixin.url, "url":dataForWeixin.url }, function(res){}); });

如果微信瀏覽器內(nèi)部尚未初始化,所有的接口都會是undefined。為了避免進去馬上就調(diào)用出錯,獲取微信初始化完成響應(yīng)事件,初始化完成調(diào)用sendMessage進行綁定。

如下: 復(fù)制代碼 代碼如下:

if(document.addEventListener){ document.addEventListener('WeixinJSBridgeReady', sendMessage, false); }else if(document.attachEvent){ document.attachEvent('WeixinJSBridgeReady' , sendMessage); document.attachEvent('onWeixinJSBridgeReady' , sendMessage); }

下面還有幾個小功能: 復(fù)制代碼 代碼如下:

WeixinJSBridge.call('hideToolbar'); //隱藏右下面工具欄 WeixinJSBridge.call('showToolbar'); //顯示右下面工具欄 WeixinJSBridge.call('hideOptionMenu'); //隱藏右上角三個點按鈕。 WeixinJSBridge.call('showOptionMenu'); //顯示右上角三個點按鈕。 本文來源于成都網(wǎng)站建設(shè)公司與成都網(wǎng)站設(shè)計制作公司-創(chuàng)新互聯(lián)成都公司!

當前題目:其實微信內(nèi)置瀏覽器私有接口WeixinJSBridge的
標題路徑:http://muchs.cn/news35/316785.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、企業(yè)網(wǎng)站制作、營銷型網(wǎng)站建設(shè)、軟件開發(fā)、動態(tài)網(wǎng)站、做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)