使用jQuery.wechat構(gòu)建微信WEB應(yīng)用
因?yàn)樽罱约旱漠a(chǎn)品要在微信公眾號中推廣,需要提供一些有意義的功能,于是被迫走上了支持微信這條不歸路。
眾所周知,騰訊是那樣一個神奇的公司,他們的產(chǎn)品在商業(yè)上獲得巨大成功,但文檔真的很難令人恭維,諾大一個公眾號開發(fā)平臺,我竟然找不到真正的,關(guān)于web開發(fā)的官方文檔,有的就是個別示例,剩下的...呵呵,有一個叫開發(fā)者交流互助的東東。
看完上面這個圖后,有沒有這樣的感覺,一幫群眾拼命的想知道發(fā)生了什么,但就是沒有官方聲明!o(∩_∩)o 哈哈
說了這么多,趕緊入正題,本期要講的就是我痛苦中掙扎徘徊后寫的jQuery.wechat,一個提供了統(tǒng)一API的、基于jQuery.promise的jQuery.plugin。希望能多少幫助到大家。
首先,安裝那是相當(dāng)?shù)暮唵?br />
bower install --save jquery-wechat
如果不用bower的,自己從Github上下載、解壓,那也是一樣一樣滴!
加載,那也是水一樣的自然
<script type="text/javascript" src="bower_components/jquery/dist/jquery.min.js"></script>
<script type="text/javascript" src="bower_components/jquery-wechat/dist/jquery-wechat.min.js"></script>
你如果用了amd,cmd之類的延遲加載技術(shù),想必你也是個行家,不用我再教你怎么配置了吧?
使用——簡單、輕松、統(tǒng)一、爽!
啟用jQuery.wechat功能
$.wechat.enable(); //So easy!
因?yàn)檎麄€插件是基于jQuery.promise的,所以你也可以給它一個鏈:
$.wechat.enable().done(function(){
alert('已經(jīng)啟用成功');
}).fail(function(){
alert('啟用失敗');
});
考慮到目前單頁技術(shù)(SPA)的廣泛應(yīng)用,工具類的設(shè)計(jì)必須考慮啟用/停用機(jī)制,否則可能引起未知錯誤。
隱藏/顯示菜單
$.wechat.hideMenu(); //隱藏菜單
$.wechat.showMenu(); //顯示菜單
啟用jQuery.wechat之后,就可以隨意調(diào)用如hideMenu之類的方法了,無需將其他方法寫入enable的done回調(diào)之中。jQuery.wechat的實(shí)現(xiàn)原理是,如果jQuery.wechat還沒有啟用成功,所有操作會進(jìn)入排隊(duì),一旦啟用成功后,則順序執(zhí)行;如果啟用失敗,則永遠(yuǎn)不會執(zhí)行。
隱藏/顯示底部工具欄
$.wechat.hideToolbar(); //隱藏底部工具欄
$.wechat.showToolbar(); //顯示底部工具欄
打開掃描二維碼界面
$.wechat.scanQRcode();
打開圖片預(yù)覽工具
$.wechat.preview({
current: 'http://xxx/img/pic001.jpg', //進(jìn)入預(yù)覽模式后,直接顯示這張圖片
urls: [
'http://xxx/img/pic001.jpg',
'http://xxx/img/pic002.jpg',
'http://xxx/img/pic003.jpg',
'http://xxx/img/pic004.jpg',
'http://xxx/img/pic005.jpg',
'http://xxx/img/pic006.jpg'
] //所有要在預(yù)覽模式下顯示的圖片
});
獲取網(wǎng)絡(luò)狀態(tài)
$.wechat.getNetworkType().done(function(response) {
$('#network').text(response.split(':')[1]);
});
response格式如下:
network_type:wifi wifi網(wǎng)絡(luò)
network_type:edge 非wifi,包含3G/2G
network_type:fail 網(wǎng)絡(luò)斷開連接
network_type:wwan (2g或者3g)
修改分享格式
每次看到別人的app分享出來的消息都帶著精美的縮略圖、適當(dāng)?shù)臉?biāo)題和描述,更有甚者消息下面還跟了一行小字指出該消息是由誰發(fā)送出來的;再看看你自己分享出去的消息,一個藍(lán)色的默認(rèn)空白圖片,配著不搭調(diào)的標(biāo)題,會不會奇怪是什么邏輯把他們?nèi)M(jìn)去的?
還好,咱們現(xiàn)在就來解決這個問題:
$.wechat.setShareOption({
appid: 'xxxx', //小標(biāo)appid
img_width: '60',
img_height: '60',
img_url: window.location.toString() + 'img/demo.jpg', //縮略圖
title: 'DEMO', //標(biāo)題
desc: 'The description is set from $.wechat.setShareOption', //描述
link: function() {
return window.location.toString(); //消息分享出去后,用戶點(diǎn)擊消息打開的鏈接地址
},
callback: function(response) {
alert(response); //分享后的回調(diào)函數(shù),常見的有成功和取消
}
});
具體參考如下截圖:
該分享格式變更會影響發(fā)送給朋友、分享到朋友圈、分享到微博、發(fā)送郵件四項(xiàng)功能。當(dāng)設(shè)置后,再點(diǎn)擊右上角菜單鍵打開菜單后,選擇前述四項(xiàng)中的任意一項(xiàng),就能看到更改后的效果
關(guān)閉當(dāng)前頁
$.wechat.closeWindow();
停用jQuery.wechat機(jī)制
$.wechat.destroy();
停用后,所有功能自動重置回初始狀態(tài)
該功能在單頁應(yīng)用(SPA)中比較常用
- jQuery實(shí)現(xiàn)微信長按識別二維碼功能
- 使用jQuery Rotare實(shí)現(xiàn)微信大轉(zhuǎn)盤抽獎功能
- jQuery+PHP實(shí)現(xiàn)微信轉(zhuǎn)盤抽獎功能的方法
- jquery1.8版本使用ajax實(shí)現(xiàn)微信調(diào)用出現(xiàn)的問題分析及解決辦法
- jquery使用ajax實(shí)現(xiàn)微信自動回復(fù)插件
- Jquery 類網(wǎng)頁微信二維碼圖塊滾動效果具體實(shí)現(xiàn)
- JavaScript結(jié)合Bootstrap仿微信后臺多圖文界面管理
- jquery仿微信聊天界面
相關(guān)文章
jQuery回調(diào)函數(shù)的定義及用法實(shí)例
這篇文章主要介紹了jQuery回調(diào)函數(shù)的定義及用法,以實(shí)例形式詳細(xì)分析了回調(diào)函數(shù)的原理與實(shí)現(xiàn)技巧,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-12-12JQuery查找子元素find()和遍歷集合each的方法總結(jié)
下面小編就為大家?guī)硪黄狫Query查找子元素find()和遍歷集合each的方法總結(jié)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-03-03jQuery EasyUI 中文API Button使用實(shí)例
jQuery EasyUI 中文API Button使用小結(jié),需要的朋友可以參考下。2010-04-04jQuery 1.2.x 升級 1.3.x 注意事項(xiàng)
2009-05-05jQuery實(shí)現(xiàn)仿美橙互聯(lián)兩級導(dǎo)航菜單效果完整實(shí)例
這篇文章主要介紹了jQuery實(shí)現(xiàn)仿美橙互聯(lián)兩級導(dǎo)航菜單效果,以完整實(shí)例形式分析了jQuery響應(yīng)鼠標(biāo)事件實(shí)現(xiàn)針對頁面元素的遍歷及樣式的動態(tài)操作技巧,需要的朋友可以參考下2015-09-09