`
kokobox
  • 浏览: 17871 次
  • 性别: Icon_minigender_1
  • 来自: 广州
最近访客 更多访客>>
社区版块
存档分类
最新评论

关于javascript判断文件大小-----闲聊

阅读更多
  





   对于web开发人员来说文件上传文件是经常遇到的,判断文件大小也是不可缺少,在这里主要介绍一下javascript判断文件大小的几种常见的方法。

   第一种是应用ActiveX控件的实现,例如:
<script type="text/javascript">
function getFileSize(filePath)
{
   var fso = new ActiveXObject("Scripting.FileSystemObject");
   alert("文件大小为:"+fso.GetFile(filePath).size);
}
</script>
<body>
<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value);">
</body>


这种方法可以实现,也容易被开发人员想到,但是唯一不足之处是有安全提示,当然把文件名改为.hta则会屏蔽掉安全提示,但很难被需求所取。不推荐,也不多说

   下面主要谈谈另一种方式,在html标签中有一个不为一般开发人员“深”知的img标签,先来说下他有的属性:src,dynsrc,start,alt,controls,loop,loopdelay,hspace,vspace....还有一些常用的属性就不列出来了,在这里我们说一下"dynsrc"这个属性:dynsrc可以用来插入各种多媒体,格式可以是Wav、Avi、AIFF、AU、MP3、Ra、Ram等等。url为音频或视频文件及其路径,可以是相对路径或绝对路径。

    示例:<img dynsrc="xxxx.mp3">

    这样我们就可以根据dynsrc动态赋值任何类型文件的路径,在javascript中根据Image对象本身的fileSize属性来得到文件的大小。当然Image对象还有其他的几个属性,例如:fileCreatedDate、fileModifiedDate、fileSize、fileUpdatedDate、filters... , 代码如下:

<script type="text/javascript">
function getFileSize(filePath)
{
   var image=new Image();
   image.dynsrc=filePath;
   alert(image.fileSize);
}
</script>
<body>
<INPUT TYPE="file" NAME="file" SIZE="30" onchange="getFileSize(this.value)">
</body>


经测试,得到文件大小,并未出现安全提示,推荐,没的说















9
9
分享到:
评论
23 楼 wenjianping007 2012-10-11  
IE8 也不行 同IE7的错误
22 楼 zoutuo 2009-10-30  
IE7.0,出现错误:无法设置dynscr属性,拒绝访问
21 楼 loocao 2009-05-12  
问题多多啊...
20 楼 accphc 2008-09-23  
IE7.0,出现错误:无法设置dynscr属性,拒绝访问
IE6.0,通过。。。
火狐,出新undifine
最新的浏览器,谷歌,通火狐。
现在在怀疑,google是不是搞定火狐的,那么相似,
这个属性适用范围太小了!那在上传文件之前判断文件大小怎么办?
19 楼 kokobox 2008-08-14  
这个我找个时间测试一下,因为我们的程序都在用这个,只是后台有也判断,前面用try或其他操作屏蔽了异常,也是为了增加一些IE用户的提交和校验数据的速度

由于我们都是配机给客户,可能是大部分用户用的都是IE6,即使用了火狐由于屏蔽了js异常转为后台校验,所以没有这个Bug报告上来

18 楼 dddccc_123 2008-08-14  
顺便说下。。我把dynsrc换成大写DYNSRC,IE7下可以运行,可是每次size都为-1
17 楼 kokobox 2008-08-14  
IE7 没试过,我这里没有IE7

等有机会了试一试
16 楼 dddccc_123 2008-08-14  
IE7 试过了没
15 楼 kokobox 2008-08-14  
遨游---->傲游
14 楼 kokobox 2008-08-14  
遨游可以啊,你的怎么不可以?

难度是遨游版本的问题?????

你的代码和我写的一样吗?
13 楼 kokobox 2008-08-14  
我去试一试遨游看看
12 楼 kokobox 2008-08-14  
又来一个,csdn都搬到这里来了

只针对IE,这只是在前台过滤,后台当然你还要再判断一次的啦

11 楼 yirentianran 2008-08-14  
傲游不行啊 返回-1
10 楼 kokobox 2008-08-13  
竹子也来了,csdn的版主都来这里玩了

也不知道csdn什么时候可以登陆。。。。。

我也从来没写过技术博客,没想到这么多人能来看

感觉这里的帖子有点像文章,感觉这里的博客有点像论坛,呵呵,还有点不太习惯

可能习惯csdn了
9 楼 java2000_net 2008-08-13  
纯IE,返回了文件从长度
8 楼 java2000_net 2008-08-13  
IE6 傲游 测试失败,为-1
ff 下直接为undefine
7 楼 kokobox 2008-08-13  
应该不会吧,如果要是 new Image(); dynsrc是不会出现拒绝访问的,如果是对标签<img >动态处理的话,在服务器下会报告dynsrc拒绝访问。。

由于我没有IE7 不好测试

等下班了,我找个机会看看,ff下不行我早已测试过,只是在文章里没有写。


6 楼 dddccc_123 2008-08-13  
我又换了IE6试了。。是可以的
5 楼 dddccc_123 2008-08-13  
错误是 无法设置synsrc属性。拒绝访问
4 楼 dddccc_123 2008-08-13  
IE7 貌似把dynsrc这个属性的写去掉了,只能读了

相关推荐

    javascript经典特效---文件大小的详细计算.rar

    在JavaScript编程语言中,文件大小的计算是一项重要的任务,尤其在网页应用中,例如上传、下载功能,或者处理用户输入的数据。本资源“javascript经典特效---文件大小的详细计算.rar”可能包含一个详细讲解如何使用...

    PHP, MySQL & JavaScript All-in-One For Dummies epub

    PHP, MySQL & JavaScript All-in-One For Dummies 英文epub 本资源转载自网络,如有侵权,请联系上传者或csdn删除 查看此书详细信息请在美国亚马逊官网搜索此书

    javascript 特效大全----网页程序员的救

    javascript 特效大全----网页程序员的救星 javascript 特效大全----网页程序员的救星 javascript 特效大全----网页程序员的救星 javascript 特效大全----网页程序员的救星 javascript 特效大全----网页程序员的救星

    Algorithm-javascript-datastructures-algorithms.zip

    Algorithm-javascript-datastructures-algorithms.zip,用于教育目的的javascript和typescript数据结构和算法的集合。javascript算法和数据结构手册的源代码包,算法是为计算机程序高效、彻底地完成任务而创建的一组...

    photoshop-cc-javascript-ref-2015.pdf

    在“photoshop-cc-javascript-ref-2015.pdf”中,你将找到详细的API参考,每个函数和对象的说明,以及示例代码,帮助你理解和掌握如何在实际项目中运用JavaScript。同时,该文档通常会包含错误处理和最佳实践的建议...

    javascript经典特效---扫雷程序.rar

    javascript经典特效---扫雷程序.rar javascript经典特效---扫雷程序.rar javascript经典特效---扫雷程序.rar

    javascript经典特效---文本判断效果.rar

    在这个名为“javascript经典特效---文本判断效果.rar”的压缩包中,我们关注的是一个特定的JavaScript特效:文本判断效果。这个效果通常用于检测用户输入的文本,比如验证表单、实现智能提示或者进行关键词匹配等。 ...

    javascript经典特效---打开无边窗口.rar

    在网页设计中,"打开无边窗口"通常指的是利用JavaScript代码创建一个新的浏览器窗口,该窗口可以自定义大小、位置、工具栏等属性,以达到特定的用户体验效果。在"javascript经典特效---打开无边窗口.rar"这个资源中...

    HXSL-廖雪峰-JavaScript-教程 ----PDF文件--- 高清带书签(非扫描)

    廖雪峰JavaScript教程 pdf版 高清带书签 所有资源都是经过实地查看,并会时不时使用的,基本都会带书签,没书签的我也会自己挨着加上书签。资源包括linux、c++、qt、嵌入式、web等

    javascript经典特效---多图片飞舞链接.rar

    HTML文件可能包含了图片的源(src)和链接的目标地址(href),而JavaScript部分则负责处理图片的动画效果,如改变位置、大小、旋转等,以模拟“飞舞”的视觉效果。 在这个特效中,JavaScript可能会使用定时器...

    javascript 实现限制上传文件大小

    javascript 实现限制上传文件大小

    javascript经典特效---左上角的菜单.rar

    总的来说,这个“javascript经典特效---左上角的菜单.rar”项目是一个使用JavaScript编程语言实现的网页菜单特效,它位于页面的左上角,可能包含了一个HTML文件,用于定义菜单的布局和初始状态,而JavaScript代码则...

    javascript经典特效---在网页中运行代码.rar

    JavaScript是一种广泛应用于网页开发的脚本语言,它可以让网页...通过阅读和分析压缩包内的代码,你可以掌握更多关于JavaScript在实际应用中的技巧和最佳实践。在实践中不断探索,将有助于你成为一名出色的Web开发者。

    JavaScript面向对象编程--继承.mht

    JavaScript面向对象编程--继承.mht,JavaScript面向对象编程--继承.mht,JavaScript面向对象编程--继承.mht,JavaScript面向对象编程--继承.mht

    javascript实例应用---系统检测类.rar

    javascript实例应用---系统检测类.rarjavascript实例应用---系统检测类.rarjavascript实例应用---系统检测类.rarjavascript实例应用---系统检测类.rar

    javascript实例应用---连接数据库实例.rar

    javascript实例应用---连接数据库实例.rarjavascript实例应用---连接数据库实例.rarjavascript实例应用---连接数据库实例.rarjavascript实例应用---连接数据库实例.rar

    javascript实例应用---菜单特效类.rar

    javascript实例应用---菜单特效类.rarjavascript实例应用---菜单特效类.rarjavascript实例应用---菜单特效类.rarjavascript实例应用---菜单特效类.rar

    javascript实例应用---按钮特效类.rar

    javascript实例应用---按钮特效类.rarjavascript实例应用---按钮特效类.rarjavascript实例应用---按钮特效类.rarjavascript实例应用---按钮特效类.rar

    javascript实例应用---日期时间类.rar

    javascript实例应用---日期时间类.rarjavascript实例应用---日期时间类.rarjavascript实例应用---日期时间类.rarjavascript实例应用---日期时间类.rar

Global site tag (gtag.js) - Google Analytics