1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > android h5选择图片上传 js-微信H5选择多张图片预览并上传(兼容ios 安卓 已测试)...

android h5选择图片上传 js-微信H5选择多张图片预览并上传(兼容ios 安卓 已测试)...

时间:2019-08-27 12:12:19

相关推荐

android h5选择图片上传 js-微信H5选择多张图片预览并上传(兼容ios 安卓 已测试)...

值得注意的是:

1.在微信H5中选择图片运用:wx.chooseImage,

上传图片:wx.uploadImage。

2.上传图片的时候务必是一张一张的上传的(建议采用递归)

3.一张图片上传成功后务必需要延迟个几百毫秒再执行下一张的上传。

案例:深圳艺星“#美力女生#星粉颜值夏令营,Yestar艺星整形”

Html

同时选择上传1-9张照片,第一张为封面图

选择图片

js:

var imgA=new Array();

var imgserverId; //存储的图片拼接字符;

function ChoosePhoto(){

wx.chooseImage({

count: 9, // 默认9

sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有

sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有

success: function (res) {

document.getElementById("dd").innerHTML="";

imgA=[];

imgserverId="";

var localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片

var htmlPhoto="";

for(var i=0;i

htmlPhoto +='

';

}

syncUpload(localIds)

document.getElementById("dd").innerHTML+=htmlPhoto;

}

});

};

var syncUpload = function(localIds){

var localId = localIds.pop();

wx.uploadImage({

localId: localId.toString(), // 需要上传的图片的本地ID,由chooseImage接口获得

isShowProgressTips: 1, // 默认为1,显示进度提示

success: function (res) {

//res.serverId 返回图片的服务器端ID

var serverId = res.serverId; // 返回图片的服务器端ID

imgA.push(serverId)

imgserverId=imgA;

if(localIds.length > 0){

window.setTimeout(function(){

syncUpload(localIds);

},100);

}else{

window.setTimeout(function(){

downloadImage(0);

},100);

}

}

})

}

题外话:

在ios中之前做项目时也有遇到一个需求是“分享朋友圈后抽奖次数+1”。的情况。

安卓能够好好的判断接收到用户分享成功。但是ios则不会成功。

我们的解决办法也是需要延迟几百毫秒才能正常成功的接收到苹果的分享反馈

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。