javascript - 如何使用 javascript 或 Jquery 获取 IE 浏览器的文件大小?

标签 javascript file-upload fileapi

我已经为 IE 浏览器使用了 ActiveXObject,但它不工作。我已经在js中获取了其他浏览器的文件大小,但无法获取IE浏览器的文件大小。我为此使用了以下代码:-

if ($.browser.msie==true)
 {
     var fileSystemObject = new ActiveXObject("Scripting.FileSystemObject");
     var path = document.uploadDocumentForm.documentUpload.value;
     var file = fileSystemObject.getFile(path);
     var size = file.size;
     alert(size);

/*  var a = document.getElementById(fileId).value;
            $('#myImage').attr('src',a);
            var imgbytes = document.getElementById('myImage').fileSize;       
            alert("here"+imgbytes);
            var imgkbytes = Math.round(parseInt(imgbytes)/1024);        */

}
else
{
               var fileInput = $("#"+fileId)[0]; 
               var imgbytes = fileInput.files[0].size; 
              var imgkbytes = Math.round(parseInt(imgbytes)/(1024));
}   

任何人都可以帮助我获取 IE 浏览器的文件大小。我已经经历了所有的想法,但无法获得 IE 浏览器的文件大小。请为此提供想法或代码...

最佳答案

下面是一个可行的建议。

<script type="text/javascript">
function AlertFilesize(){
    if(window.ActiveXObject){
        var fso = new ActiveXObject("Scripting.FileSystemObject");
        var filepath = document.getElementById('fileInput').value;
        var thefile = fso.getFile(filepath);
        var sizeinbytes = thefile.size;
    }else{
        var sizeinbytes = document.getElementById('fileInput').files[0].size;
    }

    var fSExt = new Array('Bytes', 'KB', 'MB', 'GB');
    fSize = sizeinbytes; i=0;while(fSize>900){fSize/=1024;i++;}

    alert((Math.round(fSize*100)/100)+' '+fSExt[i]);
}
</script>

<input id="fileInput" type="file" onchange="AlertFilesize();" />

摘自另一个答案Get file size before uploading .

关于javascript - 如何使用 javascript 或 Jquery 获取 IE 浏览器的文件大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10737264/

相关文章:

javascript - 如何在 JavaScript 中向 Function.prototype 添加函数?

mysql - 将数据 Infile 加载到 mysql 表中

javascript - 来自 DataURL 的 Blob?

javascript - 使用 PhoneGap/Cordova 写入文件期间 iOS UI 卡住

javascript - 如何让按钮每次点击都保持移动?

javascript - 在 compose 中将 props 作为参数传递给另一个 HoC

java - 如何将文件上传集成到 Spring Data REST 存储库中?

java - Google Apps 脚本是否可以通过 HTTP POST 接收文件?

javascript - 是否有用于 html5 文件 API 和上传的 Javascript 支持库?

javascript - Chrome Extensions 同步调用 - 仅在窗口关闭后创建窗口