JS+HTML5实现上传图片预览效果完整实例【测试可用】

发布时间 - 2026-01-11 00:44:44    点击率:

本文实例讲述了JS+HTML5实现上传图片预览效果。分享给大家供大家参考,具体如下:

在项目中遇到用input标签file类型的文件上传,想实在上传之前进行图片的预览功能;之前的做的一个解决方案是文件先上传上去然后返回地址再显示在页面上,这样就不太好,因为用户基本信息可能并没有保存,但是头像却已经改变,如果在需要改变就导致了多余图片的保存服务器。

在网上找了下解决方案,如下所示:

<!DOCTYPE HTML>
<html>
  <head>
  <meta charset="utf-8">
  <title>html5 图片上传预览</title>
  <style>
    #preview {
      width: 300px;
      height: 300px;
      overflow: hidden;
    }
    #preview img {
      width: 100%;
      height: 100%;
    }
  </style>
  <script src="jquery-1.7.2.min.js"></script>
  <script type="text/javascript">
    function preview1(file) {
      var img = new Image(), url = img.src = URL.createObjectURL(file)
      var $img = $(img)
      img.onload = function() {
        URL.revokeObjectURL(url)
        $('#preview').empty().append($img)
      }
    }
    function preview2(file) {
      var reader = new FileReader()
      reader.onload = function(e) {
        var $img = $('<img>').attr("src", e.target.result)
        $('#preview').empty().append($img)
      }
      reader.readAsDataURL(file)
    }
     
    $(function() {
      $('[type=file]').change(function(e) {
        var file = e.target.files[0]
        preview1(file)
      })
    })
  </script>
</head>
<body>
<form enctype="multipart/form-data" action="" method="post">
  <input type="file" name="imageUpload"/>
  <div id="preview" style="width: 300px;height:300px;border:1px solid gray;"></div>
</form>
</body>
</html>

更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript+HTML5特效与技巧汇总》、《JavaScript图片操作技巧大全》、《JavaScript图形绘制技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。


# JS  # HTML5  # 上传图片  # 预览  # js HTML5多图片上传及预览实例解析(不含前端的文件分割)  # HTML5 JS压缩图片并获取图片BASE64编码上传  # 基于HTML5+JS实现本地图片裁剪并上传功能  # JS HTML5拖拽上传图片预览  # JS+html5实现异步上传图片显示上传文件进度条功能示例  # 手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果  # js+html5绘制图片到canvas的方法  # js HTML5 canvas绘制图片的方法  # JavaScript+html5 canvas实现图片破碎重组动画特效  # JS+HTML5实现图片在线预览功能  # javascript实现移动端 HTML5 图片上传预览和压缩功能示例  # 上传  # 相关内容  # 就不  # 遍历  # 感兴趣  # 数据结构  # 给大家  # 找了  # 所示  # 更多关于  # 太好  # 所述  # 程序设计  # 图片上传  # 文件上传  # 操作技巧  # 在网上  # 讲述了  # meta 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何正确下载安装西数主机建站助手?  如何在Windows环境下新建FTP站点并设置权限?  如何快速搭建高效WAP手机网站吸引移动用户?  Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  在线制作视频的网站有哪些,电脑如何制作视频短片?  实现点击下箭头变上箭头来回切换的两种方法【推荐】  网站制作软件免费下载安装,有哪些免费下载的软件网站?  html5如何实现懒加载图片_ intersectionobserver api用法【教程】  Laravel如何使用Scope本地作用域_Laravel模型常用查询逻辑封装技巧【手册】  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  Laravel如何使用Service Container和依赖注入?(代码示例)  如何实现javascript表单验证_正则表达式有哪些实用技巧  Laravel怎么进行数据库事务处理_Laravel DB Facade事务操作确保数据一致性  重庆市网站制作公司,重庆招聘网站哪个好?  Laravel如何记录自定义日志?(Log频道配置)  Android 常见的图片加载框架详细介绍  Laravel如何构建RESTful API_Laravel标准化API接口开发指南  EditPlus 正则表达式 实战(3)  Laravel怎么实现验证码功能_Laravel集成验证码库防止机器人注册  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  Laravel路由怎么定义_Laravel核心路由系统完全入门指南  Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康  Android自定义listview布局实现上拉加载下拉刷新功能  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  如何快速搭建自助建站会员专属系统?  Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  如何用PHP快速搭建CMS系统?  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  北京网站制作公司哪家好一点,北京租房网站有哪些?  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  Mybatis 中的insertOrUpdate操作  标题:Vue + Vuex 项目中正确使用 JWT 进行身份认证的实践指南  INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】  Firefox Developer Edition开发者版本入口  浅谈Javascript中的Label语句  Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  如何快速搭建安全的FTP站点?  Android自定义控件实现温度旋转按钮效果  如何在IIS7中新建站点?详细步骤解析  网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?  Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面  Android滚轮选择时间控件使用详解  图册素材网站设计制作软件,图册的导出方式有几种?  如何在万网主机上快速搭建网站?  Win11怎么设置默认图片查看器_Windows11照片应用关联设置