JS实现多图预览上传的实例代码
程序员文章站
2022-03-28 23:08:53
...
这篇文章主要介绍了JS实现多张图片预览同步上传功能的相关资料,需要的朋友可以参考下
废话不多说了,直接给大家贴代码了,具体代码如下所示:
/** * 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实现多图预览上传的实例代码的详细内容,更多请关注其它相关文章!
上一篇: 如何理解 redux
推荐阅读
-
Spring boot + mybatis + Vue.js + ElementUI 实现数据的增删改查实例代码(一)
-
Spring boot + mybatis + Vue.js + ElementUI 实现数据的增删改查实例代码(二)
-
iOS 实现多代理的方法及实例代码
-
iOS使用AFN进行单图和多图上传的实例代码
-
iOS 实现多代理的方法及实例代码
-
利用thrift实现js与C#通讯的实例代码
-
vue自定义js图片碎片轮播图切换效果的实现代码
-
利用thrift实现js与C#通讯的实例代码
-
vue.js高德地图实现热点图代码实例
-
Java实现拖拽文件上传dropzone.js的简单使用示例代码