1. 程式人生 > >SpringMVC與layui搭配實現圖片上傳(根據日期建立對應資料夾,配置虛擬目錄,壓縮上傳,瀏覽器版本相容)

SpringMVC與layui搭配實現圖片上傳(根據日期建立對應資料夾,配置虛擬目錄,壓縮上傳,瀏覽器版本相容)

$(function() { /** * layui圖片上傳控制元件 */ layui.use(['upload','form', 'layer'], function() { var $ = layui.jquery , upload = layui.upload; var ieVersion = IEVersion(); //上傳身份證正面 upload.render({ elem: '#cardFrontPic'
//表示當點這個id時,會觸發上傳控制元件,選擇圖片 , url: '${ctx}/userInfoApply/upload' , exts: 'jpg|png|jpeg' //表示允許上傳的圖片格式 , before: function (obj) { //預讀本地檔案示例,不支援ie8 //獲取瀏覽器版本號判斷ie版本,增強相容 console.log(ieVersion); if
(ieVersion >= 10 ){ obj.preview(function (index, file, result) { // console.log("版本大於10或不是ie瀏覽器"); // 這時的filename不是 importFile 框中的值 $('#Front').attr('style','display:none'); $('#cardFrontImg'
).attr('style','display:block').attr('src', result); //圖片連結(base64) }); } } , done: function (res) { //如果上傳失敗 if (res.code > 0) { $('#cardFrontImg').attr('style','display:none'); $('#Front').attr('style','display:block'); return layer.msg('上傳的圖片不能大於10M',{icon: 0}); }else{ //上傳成功 //如果ie版本在10以下,則使用伺服器圖片地址回顯 if(ieVersion < 10 || ieVersion =="edge"){ //console.log("ie版本小於10"); $('#Front').attr('style','display:none'); $('#cardFrontImg').attr('style','display:block').attr('src',"${ctx}/"+res.data.src); } $('#cardFrontPicture').val(res.data.src); layer.msg("圖片上傳成功",{icon:1}); } } }); }); }); //獲取瀏覽器版本 function IEVersion() { var userAgent = navigator.userAgent; //取得瀏覽器的userAgent字串 var isIE = userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判斷是否IE<11瀏覽器 var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判斷是否IE的Edge瀏覽器 var isIE11 = userAgent.indexOf('Trident') > -1 && userAgent.indexOf("rv:11.0") > -1; if(isIE) { var reIE = new RegExp("MSIE (\\d+\\.\\d+);"); reIE.test(userAgent); var fIEVersion = parseFloat(RegExp["$1"]); if(fIEVersion == 7) { return 7; } else if(fIEVersion == 8) { return 8; } else if(fIEVersion == 9) { return 9; } else if(fIEVersion == 10) { return 10; } else { return 6;//IE版本<=7 } } else if(isEdge) { return 'edge';//edge } else if(isIE11) { return 11; //IE11 }else{ return 20;//不是ie瀏覽器 } }