使用JS验证图片格式、大小并实现预览的实例详解
141 浏览量
更新于2024-09-01
收藏 61KB PDF 举报
在JavaScript中,验证上传图片的格式和大小是一项常见的功能,特别是在用户上传头像或者上传文件时。这篇文章提供了一个简单的实例,展示了如何在前端进行这项操作。主要关注点是`photoCheck`函数,它接收一个名为`obj`的对象,通常在HTML表单提交时,`obj.files`包含了用户选择的文件。
首先,函数会检查`photoSrc`输入字段是否为空。如果为空,函数直接返回,表示验证未通过。如果非空,`photo_flag`变量被设置为`true`,表示初步认为图片有效。
接下来,定义了几个变量:`fSize`(文件大小的阈值,这里是50.9KB),`fileType`用于存储文件类型,`fileSize`用于存储实际文件大小,以及`filePath`保存图片路径。在现代浏览器(如Chrome、Firefox和Webkit支持)中,`obj.files`存在,可以通过FileReader API读取文件内容。
`FileReader`对象被用来读取文件,通过`.readAsDataURL(thisFile)`将文件转换为Data URL。当读取完成后,`onloadend`事件触发,这里创建一个新的`imgObj`,设置其`src`属性为处理后的Data URL。然后,通过检查`imgObj.onload`事件,确认图片加载完成,并根据`photo_flag`状态决定是否显示图片。
在IE浏览器中,由于不支持`files`属性,作者采取了不同的方法。通过`select`方法选择文件,然后获取`document.selection.createRange().text`,这是IE特有的获取选定文件路径的方式。接着,创建一个新的`img`对象,设置其`src`为路径,通过判断`img.readyState`为"complete"来确认图片已加载。同样,根据`photo_flag`来决定是否显示图片或使用默认头像。
这个示例演示了如何使用JavaScript对上传的图片进行格式和大小的验证,同时提供了兼容不同浏览器的方法。这对于前端开发者处理用户上传文件的需求非常实用,能够确保用户体验和数据的安全性。
613 浏览量
2011-09-22 上传
2020-10-28 上传
2020-10-29 上传
2021-03-20 上传
2016-03-14 上传
2013-05-08 上传
2015-11-11 上传
2013-07-11 上传
weixin_38647039
- 粉丝: 7
- 资源: 943
最新资源
- Aspose资源包:转PDF无水印学习工具
- Go语言控制台输入输出操作教程
- 红外遥控报警器原理及应用详解下载
- 控制卷筒纸侧面位置的先进装置技术解析
- 易语言加解密例程源码详解与实践
- SpringMVC客户管理系统:Hibernate与Bootstrap集成实践
- 深入理解JavaScript Set与WeakSet的使用
- 深入解析接收存储及发送装置的广播技术方法
- zyString模块1.0源码公开-易语言编程利器
- Android记分板UI设计:SimpleScoreboard的简洁与高效
- 量子网格列设置存储组件:开源解决方案
- 全面技术源码合集:CcVita Php Check v1.1
- 中军创易语言抢购软件:付款功能解析
- Python手动实现图像滤波教程
- MATLAB源代码实现基于DFT的量子传输分析
- 开源程序Hukoch.exe:简化食谱管理与导入功能