測試地址:http://www.qq210.com/shoutu/androidphp
//1.檢查圖像接口 document.querySelector('#chooseImage').onclick = function() { log_msg('檢查api'); unvaild_api = []; wx.checkJsApi({ jsApiList:[ 'chooseImage', 'previewImage', 'uploadImage', 'downloadImage', ], success:function(res){ log_msg('返回檢查api的結果'); log_msg('1.判斷檢查api的結果'); $.each(res.checkResult, function(k, v) { if (!v) { unvaild_api.push(k); return false; } }); if (unvaild_api.length > 0) { log_msg('存在無效api'+unvaild_api.join(', ')); log_msg('存在無效api的結果'+unvaild_api.join(', ')); return false; } log_msg('無無效api'); var images = { localIds: [], serverId: [] }; //2.選擇本地或拍照的圖片 wx.chooseImage({ success: function (res) { log_msg("返回選定照片的本地ID列表或拍照圖片ID"+JSON.stringify(res)); images.localIds = res.localIds; log_msg('已選擇 ' + images.localIds.length + ' 張圖片'); log_msg('圖片地址: ' + images.localIds.join(', ')); //3.上傳選擇的圖片(遞歸) var i = 0, length = images.localIds.length; var imgs_html = []; var upload = function(){ log_msg("上傳圖片第"+i+'圖片'); wx.uploadImage({ localId:images.localIds[i], success: function(res) { log_msg('記錄res.serverId'+res.serverId); images.serverId.push(res.serverId); imgs_html.push('<img src="'+images.localIds[i]+'"/>'); log_msg('已上傳'+images.localIds[i]+i+'/'+length); //若是還有照片,繼續上傳 i++; if (i < length) { upload(); } else { //4.預覽上傳的圖片 $("#img_wrap").html(imgs_html.join('')); log_msg("上傳成功"); } } }); }; log_msg("開始上傳圖片"); upload(); } }); } }); }
//4.顯示下載後的相片 var img_html = ''; i = 0;//重置i var download = function(){ wx.downloadImage({ serverId:images.serverIds[i], success:function(res){ log_msg('下載第'+i+'張圖片的結果:'+JSON.stringify(res)); img_html += '<img src="'+res.localId+'" />'; //若是還有下載的圖片,繼續下載 i++; if (i < length) { download(); } else{ $("#img_wrap").html(img_html); } } }); } log_msg("開始下載圖片"); download();
demo地址:http://www.qq210.com/shoutu/androidhtml
demo效果:android
其餘:api
var log_msg = function(msg){ $.post('<?=site_url("log/index")?>', {msg:msg}); }
class Log extends SAE_Controller { public function index() { $msg = $this->input->post('msg'); log_message('error', $msg); echo $msg; } }