实现步骤,引入plupload上传插件,并设置multi_selection为单文件上传。
上传头像代码:var uploader_avatar = new plupload.uploader({//创建实例的构造方法
runtimes: 'gears,html5,html4,silverlight,flash', //上传插件初始化选用那种方式的优先级顺序
browse_button: ['avatar_uplpad_btn'], // 上传按钮
url: ajax.php, //远程上传地址
flash_swf_url: 'js/plugins/plupload/moxie.swf', //flash文件地址
silverlight_xap_url: 'js/plugins/plupload/moxie.xap', //silverlight文件地址
filters: {
max_file_size: '10mb', //最大上传文件大小(格式100b, 10kb, 10mb, 1gb)
mime_types: [//允许文件上传类型
{title: files, extensions: jpg,png,gif,jpeg}
]
},
multi_selection: false, //true:ctrl多文件上传, false 单文件上传
init: {
filesadded: function(up, files) { //文件上传前
uploader_avatar.start();
},
uploadprogress: function(up, file) { //上传中,显示进度条
var percent = file.percent;
$(# + file.id).find('.bar').css({width: percent + %});
$(# + file.id).find(.percent).text(percent + %);
},
fileuploaded: function(up, file, info) { //文件上传成功的时候触发
var data = eval(( + info.response + ));//解析返回的json数据
$(#avatar_pic).html()
},
error: function(up, err) { //上传出错的时候触发
alert(err.message);
}
}
});
uploader_avatar.init();在线上传头像演示:http://www.sucaihuo.com/js/880.html
云栖大会北京站:阿里技术专家难得出镜,这次一下来了100多位?!