一般上传文件后会返回文件的路径,然后存储到数据库,那么首先实现上传后的放大和删除功能

  function uploadSmallPic() {
var upload = layui.upload;
upload.render({
elem: '#smallPic'
, url: '/upload/uploadPic'
, auto: false
, number: 1
, bindAction: '#uploadSmallPic'
, choose: function (obj) {
var files = obj.pushFile();
obj.preview(function (index, file, result) {
$('#smallPicContent').append('<div style="width:80px;height: 90px;float: left;margin-right: 5px" class="image-container" id="smallPicContainer' + index + '">' +
'<div class="delete-css"><button id="upload_smallPic_' + index + '" style="width: 20px;height: 20px;"><i class="layui-icon ayui-icon-close">' +
'</i></button>' +
'</div>' +
'<img id="showSmallPic' + index + '" style="width:80px;height: 80px" src="' + result + '" alt="' + file.name + '"></div>'
);
//删除某图片
$("#upload_smallPic_" + index).bind('click', function () {
$("#smallPicContainer" + index).remove();
smallPic="";
});
//某图片放大预览
showMedia("showSmallPic" + index, "image", result);
})
},
done: function (res, index) {
smallPic = res.data;
layer.msg(res.msg);
$('#smallPicContent').html('');
return delete this.files[index];
}
});
}
function showMedia(id, type, src) {
var idBar = "#" + id;
$(idBar).bind('click', function () {
var width = $(idBar).width();
var height = $(idBar).height();
var scaleWH = width / height;
var bigH = 500;
var bigW = scaleWH * bigH;
if (bigW > 900) {
bigW = 900;
bigH = bigW / scaleWH;
} // 放大预览图片
if (type == "video") {
layer.open({
type: 1,
title: false,
closeBtn: 1,
shadeClose: true,
area: [bigW + 'px', bigH + 'px'], //宽高
content: "<video width='" + bigW + "' height='" + bigH + "'controls=\"controls\" src=" + src + " />"
});
} else {
layer.open({
type: 1,
title: false,
closeBtn: 1,
shadeClose: true,
area: [bigW + 'px', bigH + 'px'], //宽高
content: "<img width='" + bigW + "' height='" + bigH + "'controls=\"controls\" src=" + src + " />"
});
} });
}
//删除图片
function deleteMedia(id, index) {
var idBar = "#" + id;
$(idBar).bind('click', function () {
//从map中删除
imgUrlList.splice(index, 1)
//删除div
$("#container" + index).remove();
});
}
 

但在编辑数据时需要实现数据图片回显

  //设置小图
if (resp.data.goods.smallPic != null) {
smallPic = resp.data.goods.smallPic;
$('#smallPicContent').append('<div style="width:80px;height: 90px;float: left;margin-right: 5px" class="image-container" id="smallPicContainer">' +
'<div class="delete-css"><button id="upload_smallPic_' + '" style="width: 20px;height: 20px;"><i class="layui-icon ayui-icon-close">' +
'</i></button>' +
'</div>' +
'<img id="showSmallPic' + '" style="width:80px;height: 80px" src="' + smallPic + '"></div>'
);
//删除某图片
$("#upload_smallPic_").bind('click', function () {
$("#smallPicContainer").remove();
smallPic="";
});
//某图片放大预览
showMedia("showSmallPic", "image", smallPic);
}

layui——上传图片,并实现放大预览的更多相关文章

  1. jQuery Lightbox图片放大预览

    简介:jQuery Lightbox图片放大预览代码是一款可以在用户点击页面中的小图片时,将该图片的高清版本以Lightbox的方式放大显示在页面的中间,提高用户的体验度. 效果展示 http://h ...

  2. 微信小程序图片放大预览

    需求:当点击图片时,当前图片放大预览,且可以左右滑动 实现方式:使用微信小程序图片预览接口 我们可以看到api需要两个参数,分别通过下面的data-list和data-src来传到js中 wxml代码 ...

  3. 微信小程序点击图片放大预览

    微信小程序点击图片放大预览使用到 wx.previewImage 接口,可以放大.上/下一张 上代码 wxml代码 <view class='content-img' wx:if="{ ...

  4. 使用jQuery在上传图片之前实现缩略图预览

    使用jQuery在上传图片之前实现缩略图预览 jQuery代码 01 $("#uploadImage").on("change", function(){ 02 ...

  5. 一款基于jQuery可放大预览的图片滑块插件

    今天给大家分享一款基于jQuery可放大预览的图片滑块插件.这款jQuery焦点图插件的特点是可以横向左右滑动图片,并且点击图片可以进行放大预览,唯一的缺陷是这款焦点图并不能循环切换,如果你有较好的J ...

  6. mvc实现上传图片(上传和预览)webuploader

    笔者看到mvc最近比较流行,而很多使用一些比较旧的的方法上传图片,再次安利一下百度的webuploader控件吧 webuploader第一步要先下载一些插件这点可以在webuploader官网上下载 ...

  7. 上传图片转为base64格式预览并压缩图片(不兼容IE9以下浏览器,兼容移动端ios,android)

    前些天公司要求在微信移动端做上传图片并预览的功能,要求能够调用摄像头拍照并立即预览. 在网上搜了一些方法,开始自己写了个简单的功能实现代码.结果发现移动端拍照出来的图片动不动就2M+,又因为要批量上传 ...

  8. input上传图片(file),预览图片的两种方法。blob与base64编码

    上传图片时一般都需要预览,我一般用这两种方法来实现.base64编码可以直接上传到后台,后台解析下,得到的文件就会比较小了,省去了压缩图片这一步了. //获取对象input file 的图片地址,放进 ...

  9. 微信小程序上传图片,视频及预览

    wxml <!-- 图片预览 --> <view class='preview-warp' wx:if="{{urls}}"> <image src= ...

随机推荐

  1. Spring-解决请求中文乱码问题

    解决spring请求中文乱码问题 1.web.xml添加编码拦截器 <filter> <filter-name>CharacterEncoding</filter-nam ...

  2. mysql 查看索引

    查看索引 mysql> show index from tblname; mysql> show keys from tblname; · Table 表的名称. · Non_unique ...

  3. JS 返回上一页并刷新,但不用重新加载整个页面(ajax实现)

    需求 有三个页面A.B.C,点击A=>B,点击B=>C,在C中添加内容,点击确定返回到B,此时B页面需重新加载新的内容.再次点击B的返回按钮,希望返回到A而不是C. ===== 2017/ ...

  4. 给对象和函数添加method方法

    蝴蝶书中有一个method方法,用来给函数定义方法.看了之后,想着能不能给对象也定义方法呢?. 下面的代码可以实现给函数定义方法: //Function method Function.prototy ...

  5. 在IDEA中 SFTP 进行发布操作

    1, 2, 3, 4, 成功了 补充:] 也可以使用手动写配置文件的方式来的

  6. 部署到docker容器后图片验证码显示不出来

    Dockerfile如下: FROM openjdk:8-jre-alpineARG JAR_FILECOPY ${JAR_FILE} app.jarENTRYPOINT ["java&qu ...

  7. Windows运行常用命令(win+R)

    Windows运行常用命令(win+R) 1.calc: 启动计算器 2.notepad: 打开记事本 3.write: 写字板 4.mspaint: 画图板 5.snippingtool:截图工具, ...

  8. initializer_list

    initializer_list是一种模板类型,定义initializer_list对象是,必须说明列表中所含元素的类型: initializer_list<Type> lst{a, b, ...

  9. Go语言指针

    指针简介 (Pointer)是编程语言中的一个对象,利用地址,它的值直接指向(points to)存在电脑存储器中另一个地方的值.由于通过地址能找到所需的变量单元,可以说,地址指向该变量单元.因此,将 ...

  10. E - Guess the Root 拉格朗日差值法+交互

    题目传送门 题意:告诉你存在一个未知项系数最高为10的$f(x)$,你最多可以有50次询问,每次询问给出一个$x'$,系统会返回你$f(x')$的值,你需要猜一个$x''$,使得$f(x'')=0$, ...