兼容 IE6+ 获取图片大小

昨天说了 HTML5 的file对象可以获取到文件的 文件名,文件大小,文件类型,最后一次修改日期。
其实 IE6-9 也可以变向的获取到,虽然没那么方便,但至少可以取到。
来看例子吧:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<!doctype html>
<html lang="zh">
<head>
  <meta charset="UTF-8">
  <title>test</title>
</head>
<body>
  <input type="file" id="myfile" />
  <script>
  var myfile = document.getElementById("myfile");
   
  myfile.onchange = function () {
    if (window.File) {
      var img = myfile.files[0];
      alert([img.name, img.type, img.size, img.lastModified || img.lastModifiedDate].join(" - "));
    } else {
      myfile.select();
      var url = document.selection.createRange().text;
      var img = new Image();
       
      img.onload = function () {
        alert([img.nameProp, img.mimeType, img.fileSize, img.fileModifiedDate].join(" - "));
        img.onload = null;
      };
      img.src = url;
       
    }
  }
  </script>
</body>
</html>

IE 6

IE 7

IE 8

IE 9

chrome

firefox

PS: 推荐用虚拟机测试,因为我用IE11的仿真测试,结果有时取到有时取不到,被坑的不浅啊。。

FF 下获取最后修改时间不是 lastModified 而是 lastModifiedDate

好了,今天就分享这些了。。

posted @   楼教主  阅读(1767)  评论(8编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· [AI/GPT/综述] AI Agent的设计模式综述
js output×
点击右上角即可分享
微信分享提示