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 相关文章推荐
用于table内容排序
Jul 21 Javascript
一个html5播放视频的video控件只支持android的默认格式mp4和3gp
May 08 Javascript
JavaScript实现获得所有兄弟节点的方法
Jul 23 Javascript
基于javascript编写简单日历
May 02 Javascript
Javascript6中字符串的四个新用法分享
Sep 11 Javascript
Bootstrap里的文件分别代表什么意思及其引用方法
May 01 Javascript
JS 判断某变量是否为某数组中的一个值的3种方法(总结)
Jul 10 Javascript
微信小程序scroll-x失效的完美解决方法
Jul 18 Javascript
iView-admin 动态路由问题的解决方法
Oct 03 Javascript
node app 打包工具pkg的具体使用
Jan 17 Javascript
vue实现购物车加减
May 30 Javascript
js仿淘宝放大镜效果
Dec 28 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
PHP中strtotime函数使用方法详解
2011/11/27 PHP
PHP超级全局变量数组小结
2012/10/04 PHP
php中替换字符串中的空格为逗号','的方法
2014/06/09 PHP
php匹配字符中链接地址的方法
2014/12/22 PHP
php实现通过ftp上传文件
2015/06/19 PHP
TP5多入口设置实例讲解
2020/12/15 PHP
使用基于jquery的gamequery插件做JS乒乓球游戏
2011/07/31 Javascript
FireFox下XML对象转化成字符串的解决方法
2011/12/09 Javascript
Mac/Windows下如何安装Node.js
2013/11/22 Javascript
js改变文章字体大小的实例代码
2013/11/27 Javascript
纯css+js写的一个简单的tab标签页带样式
2014/01/28 Javascript
JQuery中extend使用介绍
2014/03/13 Javascript
js实现对table动态添加、删除和更新的方法
2015/02/10 Javascript
浅析JavaScript 调试方法和技巧
2015/10/22 Javascript
ionic在开发ios系统微信时键盘挡住输入框的解决方法(键盘弹出问题)
2016/09/06 Javascript
JavaScript优化以及前段开发小技巧
2017/02/02 Javascript
jquery拖动改变div大小
2017/07/04 jQuery
JS实现的点击按钮图片上下滚动效果示例
2019/01/28 Javascript
vue修改Element的el-table样式的4种方法
2020/09/17 Javascript
[38:32]完美世界DOTA2联赛循环赛 Forest vs DM 第二场 11.06
2020/11/06 DOTA
python遍历 truple list dictionary的几种方法总结
2016/09/11 Python
详解python 字符串和日期之间转换 StringAndDate
2017/05/04 Python
Python迭代器与生成器用法实例分析
2018/07/09 Python
python调用staf自动化框架的方法
2018/12/26 Python
python 自定义对象的打印方法
2019/01/12 Python
Python实现DDos攻击实例详解
2019/02/02 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
印度尼西亚电子产品购物网站:Kliknklik
2018/06/05 全球购物
如何客观的进行自我评价
2013/12/17 职场文书
小学生防溺水广播稿
2014/01/12 职场文书
党员创先争优承诺书
2014/03/26 职场文书
市场拓展计划书
2014/05/03 职场文书
教研处工作方案
2014/05/26 职场文书
一份没有按时交货失信于客户的检讨书
2014/09/19 职场文书
2014报到证办理个人委托书
2014/10/08 职场文书
最美乡村教师观后感
2015/06/11 职场文书