上傳外掛webupload之呼叫拍照相容問題
在專案中,移動端用到了webupload外掛來實現上傳功能(我覺得這個外掛挺好用的,所以無論pc還是移動端我都使用了這個外掛來做上傳功能)
在移動端要調起拍照功能,實現上傳,須得在webuploader.js中加上這句程式碼(大概在4882行左右):
input.attr( 'capture', 'camera' );
加上這個屬性,你就可以調起拍照的功能了,
但是這裡有個小問題:
在iphone上和android的手機瀏覽器中,加了這個屬性之後就只能使用拍照上傳了,無法通過相簿選擇照片上傳
因此需要在此做個相容處理,在android的微信瀏覽器中加上這個屬性,程式碼如下:
var ua = navigator.userAgent.toLowerCase();//獲取瀏覽器的userAgent,並轉化為小寫——注:userAgent是使用者可以修改的 var isIos = (ua.indexOf('iphone') != -1) || (ua.indexOf('ipad') != -1);//判斷是否是蘋果手機,是則是true var iswx = (ua.indexOf('micromessenger') != -1 );//判斷是否是微信瀏覽器,是則是true if (!isIos && iswx) { input.attr( 'capture', 'camera' ); };
這樣就可以實現拍照和相簿的上傳功能了,無論在微信瀏覽器,還是其他瀏覽器,iphone還是android都可用呢!