JS实现多张图片预览同步上传功能

发布时间 - 2026-01-11 02:01:57    点击率:

废话不多说了,直接给大家贴代码了,具体代码如下所示:

/**
 * Created by liujing on 2017/5/10.
 */
$(document).ready(function($) {
  function changef(which,bulk,name_n){
    var bulka = bulk;
    var thisid = which.attr("id");
    var f = which.prop ('files')[0];
    var filename = f.name;
    var mime = filename.toLowerCase().substr(filename.lastIndexOf("."));
    var liid = $("#"+thisid).closest("li").attr("id");
    var liidb = parseInt(liid)+1;
    if(mime==".jpg" || mime==".png"){
      var src = window.URL.createObjectURL(f);
      var name = $("#logo"+liid).val().split("\\").pop();
      $('#logotips'+liid).css({"background":'url('+src+')','backgroundSize':100+'%'});
      $('#up_flower'+liid).empty().append(name);
      $('#'+liid).append('<a class="edit_text">✖</a>');
      bulka.append('<li class="uploading" id="'+liidb+'"><a class="a_a" id="logotips'+liidb+'"><input class="input_hide logo'+liidb+'" type="file" name="'+name_n+'" id="logo'+liidb+'"></a></li>');
      $('#logotips'+liidb).css({"background":'url("../../img/c_up.png")','backgroundSize':100+'%'});
    }
    $('.logo'+liid).addClass("newc"+liid);
    $('.newc'+liid).removeClass("logo"+liid);
    $('.newc'+liid).on('change',function(){
      var files = $(this).prop('files')[0];
      var srcb = window.URL.createObjectURL(files);
      var liid = $("#"+thisid).closest("li").attr("id");
      var liidb = parseInt(liid)+1;
      var name = $("#logo"+liid).val().split("\\").pop();
      $('#logotips'+liid).css({"background":'url('+srcb+')','backgroundSize':100+'%'});
      $('#up_flower'+liid).empty().append(name);
    })
    $('.edit_text').on('click',function(){
      $(this).parent().remove();
    })
  } 
  function changelast(which ,bulk){
    var bulka = bulk;
    var thisid = which.attr("id");
    var f = which.prop ('files')[0];
    var filename = f.name;
    var mime = filename.toLowerCase().substr(filename.lastIndexOf("."));
    var liid = $("#"+thisid).closest("li").attr("id");
    var liidb = parseInt(liid)+1;
    if(mime==".jpg" || mime==".png"){
      var src = window.URL.createObjectURL(f);
      var name = $("#logo"+liid).val().split("\\").pop();
      $('#logotips'+liid).css({"background":'url('+src+')','backgroundSize':100+'%'});
      $('#up_flower'+liid).empty().append(name);
      $('#'+liid).append('<a class="edit_text">✖</a>');
    }
    $('.logo'+liid).addClass("newc"+liid);
    $('.newc'+liid).removeClass("logo"+liid);
    $('.newc'+liid).on('change',function(){
      var files = $(this).prop('files')[0];
      var srcb = window.URL.createObjectURL(files);
      var liid = $("#"+thisid).closest("li").attr("id");
      var liidb = parseInt(liid)+1;
      var name = $("#logo"+liid).val().split("\\").pop();
      $('#logotips'+liid).css({"background":'url('+srcb+')','backgroundSize':100+'%'});
      $('#up_flower'+liid).empty().append(name);
    })
    $('.edit_text').on('click',function(){
      $(this).parent().remove();
    })
  } 
    $(".logo1").one("change",function(){
      that = $(this); var bulk = $("#add_beo"); var name = $(this).attr('name'); changef(that,bulk,name);
    });
    $("#add_beo").one("change",".logo2",function(){
      that = $(this); var bulk = $("#add_beo"); var name = $(this).attr('name'); changef(that,bulk,name);
    });
    $("#add_beo").one("change",".logo3",function(){
      that = $(this); var bulk = $("#add_beo"); var name = $(this).attr('name'); changef(that,bulk,name);
    });
    $("#add_beo").one("change",".logo4",function(){
      that = $(this); var bulk = $("#add_beo"); var name = $(this).attr('name'); changef(that,bulk,name);
    });
    $("#add_beo").one("change",".logo5",function(){
      that = $(this); var bulk = $("#add_beo"); changelast(that , bulk);
    });
});

以上所述是小编给大家介绍的JS实现多张图片预览同步上传功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# js  # 多图片预览同步上传  # 图片上传预览  # 关于微信jssdk实现多图片上传的一点心得分享  # js HTML5多图片上传及预览实例解析(不含前端的文件分割)  # 微信JSSDK多图片上传并且解决IOS系统上传一直加载的问题  # JavaScript多图片上传案例  # node.js实现多图片上传实例  # 给大家  # 小编  # 在此  # 说了  # 不多  # 所示  # 所述  # 给我留言  # 感谢大家  # 多张  # 疑问请  # 有任何  # 上传  # toLowerCase  # lastIndexOf  # liid  # substr  # mime  # prop  # id 


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


相关推荐: Laravel怎么设置路由分组Prefix_Laravel多级路由嵌套与命名空间隔离【步骤】  javascript如何操作浏览器历史记录_怎样实现无刷新导航  如何快速搭建高效香港服务器网站?  js实现点击每个li节点,都弹出其文本值及修改  消息称 OpenAI 正研发的神秘硬件设备或为智能笔,富士康代工  如何快速登录WAP自助建站平台?  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  PHP 500报错的快速解决方法  音乐网站服务器如何优化API响应速度?  Linux系统运维自动化项目教程_Ansible批量管理实战  Laravel中间件起什么作用_Laravel Middleware请求生命周期与自定义详解  Win11怎么恢复误删照片_Win11数据恢复工具使用【推荐】  QQ浏览器网页版登录入口 个人中心在线进入  Laravel如何实现事件和监听器?(Event & Listener实战)  Laravel怎么导出Excel文件_Laravel Excel插件使用教程  如何挑选优质建站一级代理提升网站排名?  如何打造高效商业网站?建站目的决定转化率  Laravel怎么自定义错误页面_Laravel修改404和500页面模板  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  详解Oracle修改字段类型方法总结  香港服务器WordPress建站指南:SEO优化与高效部署策略  Laravel如何使用Service Container和依赖注入?(代码示例)  油猴 教程,油猴搜脚本为什么会网页无法显示?  Laravel如何集成Inertia.js与Vue/React?(安装配置)  新三国志曹操传主线渭水交兵攻略  laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法  Laravel的.env文件有什么用_Laravel环境变量配置与管理详解  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  如何在VPS电脑上快速搭建网站?  Gemini怎么用新功能实时问答_Gemini实时问答使用【步骤】  edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】  魔毅自助建站系统:模板定制与SEO优化一键生成指南  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  javascript中的数组方法有哪些_如何利用数组方法简化数据处理  如何破解联通资金短缺导致的基站建设难题?  高防服务器租用如何选择配置与防御等级?  JavaScript模板引擎Template.js使用详解  详解Android图表 MPAndroidChart折线图  Laravel如何正确地在控制器和模型之间分配逻辑_Laravel代码职责分离与架构建议  javascript中闭包概念与用法深入理解  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  googleplay官方入口在哪里_Google Play官方商店快速入口指南  如何快速查询网站的真实建站时间?  Laravel如何获取当前用户信息_Laravel Auth门面获取用户ID  Laravel怎么配置不同环境的数据库_Laravel本地测试与生产环境动态切换【方法】  如何快速搭建高效WAP手机网站吸引移动用户?  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives