首页 >web前端 >js教程 >在 HTML5 中上传之前如何获取文件大小、图像尺寸和类型?

在 HTML5 中上传之前如何获取文件大小、图像尺寸和类型?

Linda Hamilton
Linda Hamilton原创
2024-12-27 11:42:12896浏览

How Can I Get File Size, Image Dimensions, and Type Before Uploading in HTML5?

上传前获取文件大小、图像宽度和高度

随着 HTML5 和 File API 的出现,获取文件大小,上传前的图像宽度和高度变得更加简单。

使用 URL API

此方法利用 URL API 创建上传文件的 URL 表示形式:

const readImage = file => {
  if (!(/^image\/(png|jpe?g|gif)$/).test(file.type))
    return EL_preview.insertAdjacentHTML('beforeend', `Unsupported format ${file.type}: ${file.name}<br>`);

  const img = new Image();
  img.addEventListener('load', () => {
    EL_preview.appendChild(img);
    EL_preview.insertAdjacentHTML('beforeend', `<div>${file.name} ${img.width}×${img.height} ${file.type} ${Math.round(file.size / 1024)}KB<div>`);
    window.URL.revokeObjectURL(img.src); // Free some memory
  });
  img.src = window.URL.createObjectURL(file);
};

EL_browse.addEventListener('change', ev => {
  EL_preview.innerHTML = ''; // Remove old images and data
  const files = ev.target.files;
  if (!files || !files[0]) return alert('File upload not supported');
  [...files].forEach(readImage);
});

这允许将图像显示为预览并显示详细信息,例如上传前的文件名、尺寸、文件类型和大小。

以上是在 HTML5 中上传之前如何获取文件大小、图像尺寸和类型?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn