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


Posted in Javascript onJune 23, 2017

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

/**
 * 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实现多张图片预览同步上传功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js保留两位小数使用toFixed实现
Jul 29 Javascript
JavaScript定时器详解及实例
Aug 01 Javascript
Angularjs基础知识及示例汇总
Jan 22 Javascript
使用jQuery在对象中缓存选择器的简单方法
Jun 30 Javascript
使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
Sep 16 Javascript
JS实现可自定义大小,可双击关闭的弹出层效果
Oct 16 Javascript
jquery层级选择器的实现(匹配后代元素div)
Sep 05 Javascript
vue不通过路由直接获取url中参数的方法示例
Aug 24 Javascript
Express使用html模板的详细代码
Sep 18 Javascript
深入理解Vue官方文档梳理之全局API
Nov 22 Javascript
js保留两位小数方法总结
Jan 31 Javascript
vscode配置vue下的es6规范自动格式化详解
Mar 20 Javascript
Vue组件化通讯的实例代码
Jun 23 #Javascript
JavaScript字符串检索字符的方法
Jun 23 #Javascript
Angular2 组件通信的实例代码
Jun 23 #Javascript
js实现文字列表无缝滚动效果
Jun 23 #Javascript
jquery图片放大镜效果
Jun 23 #jQuery
Avalonjs双向数据绑定与监听的实例代码
Jun 23 #Javascript
JS失效 提示HTML1114: (UNICODE 字节顺序标记)的代码页 utf-8 覆盖(META 标记)的冲突的代码页 utf-8
Jun 23 #Javascript
You might like
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
PHP5下$_SERVER变量不再受magic_quotes_gpc保护的弥补方法
2012/10/31 PHP
CI框架(CodeIgniter)实现的导入、导出数据操作示例
2018/05/24 PHP
PHP实现的AES 128位加密算法示例
2019/09/16 PHP
json 实例详细说明教程
2009/10/31 Javascript
js实现单一html页面两套css切换代码
2013/04/11 Javascript
为什么要在引入的css或者js文件后面加参数的详细讲解
2013/05/03 Javascript
jQuery 仿百度输入标签插件附效果图
2014/07/04 Javascript
jquery实现拖拽调整Div大小
2015/01/30 Javascript
js查看一个函数的执行时间实例代码
2015/09/12 Javascript
JS实现pasteHTML兼容ie,firefox,chrome的方法
2016/06/22 Javascript
初识NodeJS服务端开发入门(Express+MySQL)
2017/04/07 NodeJs
详解nodejs微信公众号开发——5.素材管理接口
2017/04/11 NodeJs
vue 将页面公用的头部组件化的方法
2017/12/18 Javascript
js动态添加表格逐行添加、删除、遍历取值的实例代码
2018/01/25 Javascript
初探Vue3.0 中的一大亮点Proxy的使用
2018/12/06 Javascript
JavaScript中.min.js和.js文件的区别讲解
2019/02/13 Javascript
Vue基础配置讲解
2019/11/29 Javascript
python教程之用py2exe将PY文件转成EXE文件
2014/06/12 Python
Python探索之修改Python搜索路径
2017/10/25 Python
浅谈Python用QQ邮箱发送邮件时授权码的问题
2018/01/29 Python
使用pyhon绘图比较两个手机屏幕大小(实例代码)
2020/01/03 Python
Python读入mnist二进制图像文件并显示实例
2020/04/24 Python
Opencv 图片的OCR识别的实战示例
2021/03/02 Python
Algenist奥杰尼官网:微藻抗衰老护肤品牌
2017/07/15 全球购物
zooplus德国:便宜地订购动物用品、动物饲料、动物食品
2020/05/06 全球购物
工程业务员工作职责
2013/12/07 职场文书
国贸专业大学生职业生涯规划范文
2014/01/10 职场文书
餐饮业员工工作决心书
2014/03/11 职场文书
大一学生职业生涯规划
2014/03/11 职场文书
《望庐山瀑布》教学反思
2014/04/22 职场文书
考察邀请函范文
2015/01/31 职场文书
教你如何用python开发一款数字推盘小游戏
2021/04/14 Python
如何利用js在两个html窗口间通信
2021/04/27 Javascript
Python 处理表格进行成绩排序的操作代码
2021/07/26 Python
Qt自定义Plot实现曲线绘制的详细过程
2021/11/02 Python