Как изменить размер изображения на стороне клиента с помощью загрузки файла jquery
Я используюblueimp jquery-file-upload в приложении Rails 3.2 черезJQuery-FileUpload-рельсы драгоценный камень.
Я пытаюсь изменить размер изображений на стороне клиента перед загрузкой, но у меня возникают проблемы с документацией. Мой код ниже. В настоящее время загрузка работает отлично, но изображения не меняются.
Какой правильный синтаксис для изменения размера изображения с помощью jquery-file-upload.
(Два подхода показаны в coffeescript на основеэто а такжеэто документация. Ни одна из них не работает для меня.)
#Coffeescript
jQuery ->
if $("#new_asset").length
$("#new_asset").fileupload
dataType: "script"
add: (e, data) ->
types = /(\.|\/)(jpe?g|png)$/i
file = data.files[0]
if types.test(file.type) || types.test(file.name)
data.context = $(tmpl("template-upload", file))
$('#progress-container').append(data.context)
jqXHR = data.submit()
$("button.cancel").click (e) ->
jqXHR.abort()
else
alert("#{file.name} is not a jpeg or png image file")
progress: (e, data) ->
if data.context
progress = parseInt(data.loaded / data.total * 100, 10)
data.context.find('.bar').css('width', progress + '%')
stop: (e, data) ->
$('.upload').hide()
process: [
action: "load"
fileTypes: /^image\/(gif|jp?g)$/
maxFileSize: 20000000 # 20MB
,
action: "resize"
imageMaxWidth: 1500
imageMaxHeight: 1500
,
action: "save"
]
dropZone: $(".dropzone")
sequentialUploads: true
disableImageResize: /Android(?!.*Chrome)|Opera/.test(window.navigator and navigator.userAgent)
imageMaxWidth: 1500
imageMaxHeight: 1500
downloadTemplateId: null
#application.js
//= require jquery-fileupload
РЕДАКТИРОВАТЬ
Согласно ответу Матанса,add
обратный вызов в моем коде предотвращает автоматический вызов любых функций обработки. Поэтому я предполагаю, что мне нужно сделать что-то вроде
...
add: (e, data) ->
$.each data.result, (index, file) ->
// processing code goes here
Но у меня много проблем с разработкой правильного синтаксиса или осмыслением доступных руководств.
Как применить обработку изменения размера к каждому файлу в обратном вызове добавления?