var uploader = WebUploader.create({
auto: true, // 选完文件后,是否自动上传
swf: 'js/Uploader.swf', // swf文件路径
server: 'upload.php', // 文件接收服务端
pick: '.choose_all', // 选择文件的按钮。可选
// 只允许选择图片文件。
accept: {
title: 'Images',
extensions: 'jpg,jpeg,png',
mimeTypes: 'image/jpg,image/jpeg,image/png'
},
thumb: {
type: 'image/jpg,jpeg,png'
},
fileNumLimit: 8, //限制上传个数
fileSingleSizeLimit: 2048000 //限制单个上传图片的大小
});
//
//上传之前获取 文件夹相对路径,
uploader.on('uploadBeforeSend', function(object, data, headers) {
var name = object.file.name;
$("#file-text${id!}").val(name);
});
${id!}uploader.on('uploadSuccess', function(file, response){
$("#${id!}").val(response.url);
$("#${imageid!}").val(response.fileId);
$("#fileImg_${id! }").attr("src","${ctx!}/file/download?url="+response.url);
if(response.url){
if($("span[for='image']").is(".error")){
$("span[for='image']").remove();
}
}
});
uploader.on('error', function (code, file) {
var name=file.name;
var str="";
switch(code){
case "F_DUPLICATE":
str=name+"文件重复";
errorarr.push(str);
break;
case "Q_TYPE_DENIED":
str=name+"文件类型 不允许";
errorarr.push(str);
break;
case "F_EXCEED_SIZE":
var imageMaxSize = 9;//通过计算
str=name+"文件大小超出限制"+imageMaxSize+"M";
errorarr.push(str);
break;
case "Q_EXCEED_SIZE_LIMIT":
errorarr.push("超出空间文件大小");
break;
case "Q_EXCEED_NUM_LIMIT":
errorarr.push("抱歉,超过每次上传数量图片限制");
default:
str=name+" Error:"+code;
}
alert(errorarr);
});
// 点击上传按钮无反应 是因为低版本浏览器没有flash插件或者flash版本过低 无法触发WebUploader的上传机制(html5/flash)
// 监测浏览器是否支持flash
function hasUsableSWF(){
var swf;
if(typeof window.ActiveXObject != "undefined"){
swf = new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
}else{
swf = navigator.plugins['Shockwave Flash'];
}
return swf ? true : false;
};
// 判断ie浏览器是否需要下载flash,需要的话弹出提示框并跳转到下载页面
if($.fn.IEVersion() !== -1 && hasUsableSWF == false) {
$("#imagepicker").click(function () {
layer.confirm('请先下载flash', {
btn: ['去下载','取消'] //按钮
}, function(){
window.open("https://www.flash.cn/");
}, function(index){
layer.close(index);
});
});
}
网友评论