js获取本地上传的⽂件(图⽚和视频)的宽⾼和⼤⼩
选择的⽂件类型 e.target.files[0].type 值
/**
* e.target.files[0].type的结果
inputtypefile不上传文件* .PSD ⽂件 ""
* .psd ⽂件 ""
* .pdf ⽂件 "application/pdf"
* .PNG ⽂件 "image/png"
* .png ⽂件 "image/png"
* .JPEG ⽂件 "image/jpeg"
* .jpg ⽂件 "image/jpeg"
*/
1. 不限制上传的图像或视频的格式:
/** 不限制上传的图像或视频的格式 */
<input type="file" accept="image/*" multiple />
<input type="file" accept="video/*" multiple />
2. 显⽰上传的⽂件类型在⼀定范围内:
/** 限制上传的⽂件类型在⼀定范围内 */
<input type="file" accept="image/png, image/jpeg" multiple />
<input type="file" accept="image/png, image/jpeg, video/mp4" multiple />
⼀、获取选择的本地的图⽚的宽⾼
/**
* 上传图⽚
* @param e 选择的⽂件对象
* @param progressCallback 进度回调
* @returns {Promise<any>}
*/
function uploadImageFile(e, progressCallback) {
return new Promise(function (resolve, reject) {
var fileObj = e.target.files[0];
if (pe != "image/png" && pe != "image/jpeg") {
console.log("请上传正确的⽂件类型");
reject("");
}
if (fileObj.size > 5*1024*1024) {
console.log("图⽚⽂件过⼤");
reject("");
}
// 获取上传的图⽚的宽⾼
var reader = new FileReader();
var replaceSrc = sult;
var imageObj = new Image();
imageObj.src = replaceSrc;
console.log(imageObj.width + imageObj.height);
// 执⾏上传的⽅法,获取外⽹路径,上传进度等
resolve();
};
};
});
}
⼆、获取上传的本地视频的宽⾼
/**
* 上传视频
* @param e 选择的⽂件对象
* @param progressCallback 进度回调
* @returns {Promise<any>}
*/
function uploadVideoFile(e, progressCallback) {
return new Promise(function (resolve, reject) {
var fileObj = e.target.files[0];
if (pe !== "video/mp4") {
console.log("请上传正确的⽂件类型");
reject("");
}
if (fileObj.size > 200*1024*1024) {
console.log("视频⽂件过⼤");
reject("");
}
// 获取上传的视频的宽⾼
var videoUrl = ateObjectURL(fileObj);
var videoObj = ateElement("video");
console.log(videoObj.videoWidth + videoObj.videoHeight);
/
/ 执⾏上传的⽅法,获取外⽹路径,上传进度等
resolve();
};
videoObj.src = videoUrl;
videoObj.load();
});
}
三、限制上传的PDF⽂件
/**
* 上传PDF
* @param e 选择的⽂件对象
* @param progressCallback 进度回调
* @returns {Promise<any>}
*/
function uploadPdfFile(e, progressCallback) {
return new Promise(function (resolve, reject) {
var fileObj = e.target.files[0];
if (pe !== "application/pdf") {
console.log("请上传正确的⽂件类型");
reject("");
}
if (fileObj.size > 60*1024*1024) {
console.log("PDF⽂件过⼤");
reject("");
}
// 执⾏上传的⽅法,获取外⽹路径,上传进度等
resolve();
});
}
参考:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论