JS实现图片预览的两种方式
发布时间 - 2026-01-11 02:04:39 点击率:次考虑到用户体验, 网页的图片上传数据库前,先预览是很有必要的一个步骤,第一可以给用户带来安全感,第二防止图片文件有问题而提交到数据库,占用存储资源。

那么要实现预览有两种方式:一种是用window.URL.createObjectURl方法对选择的图片数据(可以勉强理解为input的value)生成一个blob对象路径,第二种是用获取 FileReader读取器。
那么无论那种方法,首先都得得到文件数据,获得文件数据是从files集合中获取。
方式一:
代码如下:
<input type=file id="inp">
<script>
inp.onchange=function(){
var file=this.files[0] // 获取input上传的图片数据;
var img=new Image() ;
url=window.URL.createObjectURL(file) // 得到bolb对象路径,可当成普通的文件路径一样使用,赋值给src;
img.src=url;
//其实也可一句代码搞定,不需要声明那么多变量;img.scr=window.URL.cteateObejectURL(this.files[0]) ;
然后把img添加到页面就实现预览了
}
<script>
方式二:
用FileRader对像读取文件.可分为四步;1、创建FileReader对像;2、调用readAsDataURL方法读取文件;3、调用onload事件监听,我们一需要拿到完整的数据,但我们又不知道文件何时读完?,所以需要第三步监听;4、通过FileRader对像r的result属性拿到读取结果。
代码如下:
<input type=file id="inp">
<input type=file id="inp">
<script>
inp.onchange=function(){
var read=new FileReader() // 创建FileReader对像;
read.readAsDataURL(this.files[0]) // 调用readAsDataURL方法读取文件;
read.onload=function(){
url=read.result // 拿到读取结果;
var img=new Image();
img.src=url;
div.appendChild(img);
}
}
以上所述是小编给大家介绍的JS实现图片预览的几种方式,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# js实现图片预览
# js
# 图片预览
# angularjs点击图片放大实现上传图片预览
# JS实现的图片预览插件与用法示例【不上传图片】
# js本地图片预览实现代码
# 手机图片预览插件photoswipe.js使用总结
# JS上传图片预览插件制作(兼容到IE6)
# JS HTML5拖拽上传图片预览
# js实现纯前端的图片预览
# 小编
# 一句
# 在此
# 不需要
# 那么多
# 很有
# 是从
# 也可
# 给大家
# 考虑到
# 几种
# 又不
# 有两种
# 都得
# 可分为
# 所述
# 第二种
# 给我留言
# 第三步
# 感谢大家
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】
如何获取上海专业网站定制建站电话?
Laravel怎么实现观察者模式Observer_Laravel模型事件监听与解耦开发【指南】
Laravel如何集成Inertia.js与Vue/React?(安装配置)
JavaScript如何实现类型判断_typeof和instanceof有什么区别
Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析
如何在阿里云部署织梦网站?
黑客如何利用漏洞与弱口令入侵网站服务器?
php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
bootstrap日历插件datetimepicker使用方法
Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程
电商网站制作价格怎么算,网上拍卖流程以及规则?
香港服务器网站测试全流程:性能评估、SEO加载与移动适配优化
高防服务器:AI智能防御DDoS攻击与数据安全保障
Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】
如何在IIS7中新建站点?详细步骤解析
Laravel如何使用Telescope进行调试?(安装和使用教程)
Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】
利用JavaScript实现拖拽改变元素大小
网站制作壁纸教程视频,电脑壁纸网站?
Laravel中的withCount方法怎么高效统计关联模型数量
如何生成腾讯云建站专用兑换码?
Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门
IOS倒计时设置UIButton标题title的抖动问题
Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】
Laravel如何与Pusher实现实时通信?(WebSocket示例)
Laravel如何使用模型观察者?(Observer代码示例)
怎么用AI帮你设计一套个性化的手机App图标?
如何在云主机上快速搭建多站点网站?
微信小程序 input输入框控件详解及实例(多种示例)
Laravel用户密码怎么加密_Laravel Hash门面使用教程
如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】
北京的网站制作公司有哪些,哪个视频网站最好?
怎样使用JSON进行数据交换_它有什么限制
大连 网站制作,大连天途有线官网?
非常酷的网站设计制作软件,酷培ai教育官方网站?
魔毅自助建站系统:模板定制与SEO优化一键生成指南
如何在云指建站中生成FTP站点?
php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】
html5的keygen标签为什么废弃_替代方案说明【解答】
javascript中的try catch异常捕获机制用法分析
在线制作视频的网站有哪些,电脑如何制作视频短片?
Linux网络带宽限制_tc配置实践解析【教程】
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
如何在万网自助建站平台快速创建网站?
Laravel如何实现密码重置功能_Laravel密码找回与重置流程
猪八戒网站制作视频,开发一个猪八戒网站,大约需要多少?或者自己请程序员,需要什么程序员,多少程序员能完成?

