so ..我有一个XMLHttpRequest图像上传器和我不知道如何限制图像上传器只上传图像没有其他和我已经对文件大小进行了限制,所以它的3mb所以它不是太大javascript if image
问题你如何限制图片上传到只上传图片没有别的
图片上传代码
// following line is not necessary: prevents running on SitePoint servers
if (location.host.indexOf("sitepointstatic") >= 0) return
var xhr = new XMLHttpRequest();
if (xhr.upload && file.type == ("image/jpg"||"image/png") && file.size <= $id("MAX_FILE_SIZE").value) {
// create progress bar
var o = $id("progress");
var progress = o.appendChild(document.createElement("p"));
progress.appendChild(document.createTextNode("upload " + file.name));
// progress bar
xhr.upload.addEventListener("progress", function(e) {
var pc = parseInt(100 - (e.loaded/e.total * 100));
progress.style.backgroundPosition = pc + "% 0";
}, false);
// file received/failed
xhr.onreadystatechange = function(e) {
if (xhr.readyState == 4) {
progress.className = (xhr.status == 200 ? "success" : "failure");
}
};
// start upload
xhr.open("POST", "upload.php", true);
xhr.setRequestHeader("X_FILENAME", file.name);
xhr.send(file);
}
else
{
alert("file in unsported at this time " + file.type);
}
我只是想检查他们的文件扩展名是为了清楚。
感谢您的帮助
如何决定给定文件是否为图像?这完全不可能以100%的准确性完成,并且它形成了整个你的问题(因为解决方案只是调用if(isImage(file)){...}',一旦你定义了这个函数。想想你的*实际*约束是什么,以及为什么你想这样做,可能会帮助指导实现。 –
对不起,问题有点不清楚我想检查文件扩展名,所以pngs,jpgs等 – ryanc1256
@ user1285198-你使用的是哪一个上传器? – coder