$("#selectFiles").unbind("change").bind("change",function(){
var file = this.files[0];
if (file) {
var key = file.name;
var config = {
useCdnDomain: false,
region: qiniu.region.z0,
};
var putExtra = {
fname: "",
params: {},
mimeType: ['video/mp4'],
};
putExtra.params["x:name"] = key.split(".")[0];
if (!checkFileExt(key)){
$('#selectFiles').val(''); // 清空所选文件,解决相同文件名的文件无法上传的问题
alert('文件必须是mp4格式!');
return false;
} else {
var flag = true;
$('#selectFiles').val(''); // 清空所选文件,解决相同文件名的文件无法上传的问题
$('#selectFiles').attr('disabled',true);
$('#pickfiles').attr('disabled',true);
$('#addVideo').append('<div id=\"upLoadBtn\" class=\"upLoadBtn\" style="position:absolute";top: 50%; left: 50%;></div> ');
$('#progress').css('height','6px');
$('#fileName').val(key);
}
var next = function(res){
var total = res.total;
$('#percent').attr('style','width:'+total.percent+'%');
};
var error = function(err) {
$('#upLoadBtn').remove();
if (err.isRequestError) {
if (err.code) {
alert('请求出错',err);
console.log('请求出错',err);
}
} else if(err.message) {
alert('上传失败',err.message);
console.log('上传失败',err.message);
}
return false;
};
var complete = function(res) {
if(res) {
alert("视频上传成功");
var sourceLink = 'http://' + domain + '/' + res.key; //获取上传成功后的文件的Url
var posterUrl = sourceLink + '?vframe/jpg/offset/0/w/429/h/268';
$('#posterUrl').val(posterUrl);
$('#filePath').val(sourceLink);
$('#upLoadBtn').remove();
$("#videoConfirmButton").prop("disabled",'');
}
};
var subObject = {
next: next,
error: error,
complete: complete
};
observable = qiniu.upload(file, key, token, putExtra, config);
if (flag) {
subscription = observable.subscribe(subObject); // 上传
}
}
});
使用ie11上传视频报:对象不支持startsWith属性或方法(err.message),检查了下项目中的代码,没有startsWith方法,我觉得我的上传写的没问题啊,谷歌和火狐都可以正常上传。
找到啦
JS-SDK的md文件中有写,怪自己没有看使用文档导致找了好久?